C语言第二题为什么
1个回答
展开全部
static int i 创造了一个静态局部变量,就是相当於全局变量不会被再运行时重置,也没有和for loop裏的i冲突。
首先for loop循环五次,每次a加上一个fun() return的s。
然後看fun(),
第一次,i = 0,s = 1;然後s = s+i = 1+0 = 1,i = 1,return了s = 1.
第二次,i还是等於之前的1,s又重新定义变成了1,所以s = s+i = 1+1 = 2,i = 2,return了s = 2.
所以五次for loop 的结果应该是1 + 2 + 3 + 4 + 5 = 15.
我自己做的所以不知道对不对,如果有理解错误还行多多指教,谢谢!
更多追问追答
追问
那第三次怎么运算呗
嗯?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询