程序执行后的输出结果是

#include <stdio.h>
int fun(int b)
{ static int a=0;
int t;
t=a+b;
a=b;
return t;
}
void main()
{ int i;
for(i=1;i<24;) 这里第三个空着的,是i++?
printf("%d ",i fun(i);
}
程序执行后的输出结果是
A)1 2 3 5 8 13 21 34
答案为什么是循环8次?
我算出来没有2这个答案?为啥?

代码不是很清楚,可以再发一遍~

img


比如这个地方

你要求什么呢,我看你的程序结果是后面一个数是前面两个数的和

img

1.这里第三个空着的,是i++?
不是的,此处可以不加自增语句控制循环次数。直接来说就是下面有函数的输出调用,根本来说就是这个程序要最终实现的效果。
2.为什么是循环8次?
第一次i=1
t=a+b=0+1=1
a=1
return 1
第二次i=1
t=a+b=1+1=2
a=1
return 2
第三次i=1
t=a+b=1+2=3
a=2
return 3
依次类推,第八次return 34 结果大于24 跳出循环,总计八次。

以上仅供参考,如有任何疑问,可以评论回复,看到即回。
希望对题主有所帮助!可以的话,点个采纳!