c语言题,求大神仔细讲解!
1个回答
展开全部
fun(int n) //因为m=0,所以该方法执行的操作是n+0并返回这个值。
for(i=1;i<=4;i++) //for循环,i=1开始,所以 i 的值依次为1 、2、3、4。
a+=fun(i); //等于a = a+fun(i)
printf //输出a
所以第一次执行的时候:
A、 i=1 , fun(i)=fun(1)=1
B、a=0, a+=fun(i) = 0+1 = 1, 即a = 1
C、输出a=1.
第二次执行的时候步骤还是一样,值得注意这时候a=1 ,i=2, 所以执行到B步骤的时候应该等于 a+fun(i) = 1+2 ,
依次类推
for(i=1;i<=4;i++) //for循环,i=1开始,所以 i 的值依次为1 、2、3、4。
a+=fun(i); //等于a = a+fun(i)
printf //输出a
所以第一次执行的时候:
A、 i=1 , fun(i)=fun(1)=1
B、a=0, a+=fun(i) = 0+1 = 1, 即a = 1
C、输出a=1.
第二次执行的时候步骤还是一样,值得注意这时候a=1 ,i=2, 所以执行到B步骤的时候应该等于 a+fun(i) = 1+2 ,
依次类推
更多追问追答
追问
我知道,但是最后结果算出来是10,答案是20
怎么算出20的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询