以下是引用neu_cnlj在2006-10-25 16:30:38的发言:
不明白,我试了试,结果是*s=90-6*啊
那这道算了
[此贴子已经被作者于2006-10-25 17:24:25编辑过]
不明白,我试了试,结果是*s=90-6*啊
那这道算了
[此贴子已经被作者于2006-10-25 17:24:25编辑过]
i为0时,n[0]=0,n[1]=0,n[2]=0;
所以 j为0时,n[0]=n[0]+1,n[0]=1,而此时,n[1]依旧为0!
下面依此类推!
这个我在看一下,看不懂的话晚上再来请教您,谢谢
第二题,第一个循环语句执行一次,下一个循环语句就要循环两次,所以当第一个语句执行后,a[0]=2;
当第二次执行的时候,a[1]=a[0]+1;所以a[1]=3;
所以我有时候会搞不懂该什么时候输出,循环是和中括号有关系的吗?
不好意思再问一道
#include<stdio.h>
long fun(int n)
{ long s;
if(n<=2)s=2;
else s=n+fun(n-1);
printf("%d\t",s);
return s;
}
main()
{
fun(5);
printf("\n");
}
这个我只能做出一个9,其他的答案做不出,请教下该怎么做
递归顺序
s=5+fun(4)
fun(4): s=4+fun(3)
fun(3):s=3+fun(2)
fun(2)//满足if(n<=2)s=2; 输出 2 return 2; 即返回到fun(3)
fun(3):执行printf语句 s=3+fun(2)=3+2=5 输出 5 ,return 5 并返回到fun(4)
fun(4):执行printf语句 s=4+fun(3)=4+5=9 输出 9 ,return 9 并返回到fun(5)
fun(5):执行printf语句 s=5+fun(4)=5+8=14 输出 14 ,return 14 结束