Как исправить код, чтоб можно было вводить число через консоль.
Задача - Вычислить количество различных представлений натурального числа N в виде суммы натуральных чисел
#include <stdlib.h>
#include <stdio.h>
#define M 100 // Максимальное число слагаемых
int a[M], Kk;
void Out()
{ int i;
for(i=0; i<Kk; i++) printf("%d ", a[i]);
printf("\n");
}
void rec(int k, int n, int v)
{
if (n < k) return;
if (k==1) {
if (n > v) return;
a[0] = n;
Out();
return;
}
a[k-1] = (n < v) ? n : v;
for( ; a[k-1]>0; a[k-1]--)
rec(k-1, n - a[k-1], a[k-1]);
}
int main(int ac, char **av)
{ int n;
if (ac<3) return 1;
n = atoi(av[1]); // Входные данные
Kk = atoi(av[2]);
if (n>M || n<Kk) return 1; // Ошибочные данные
rec(Kk, n, n);
}