Я только начал с рекурсии и, похоже, не мог понять, как произойдет следующее. Я хочу напечатать значения от i = 2
до i = 6
. в настоящее время это печать в обратном порядке. Не могли бы вы мне помочь?
int l[][7] ={{0,0,0,0,0,0,0},{0,0,1,2,1,1,2},{0,0,1,2,1,2,2}};
int lstar = 1;
int recprint(int n, int i){
if (i>n)
{
return lstar;
}
else{
int m = recprint(n, i+1);
printf("i is %d and l[%d][%d] is %d \n", i, m, i , l[m][i]);
return l[m][i];
}
}
recprint(6, n);
Требуется вывод
i is 6 and l[1][6] is 2
i is 5 and l[2][5] is 2
i is 4 and l[2][4] is 1
i is 3 and l[1][3] is 2
i is 2 and l[2][2] is 1
в обратном порядке