[C语言]这道题答案为什么是5,7,能解释其中a,b,c的变化么?

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/02 22:37:09
[C语言]这道题答案为什么是5,7,能解释其中a,b,c的变化么?

[C语言]这道题答案为什么是5,7,能解释其中a,b,c的变化么?
[C语言]这道题答案为什么是5,7,能解释其中a,b,c的变化么?
 

[C语言]这道题答案为什么是5,7,能解释其中a,b,c的变化么?
这题的关键是理解静态变量.static in a =3;
a是一个静态变量,简单可以理解为a是一个全局变量,相当于在main()外定义了int a=3;
直到main()结束时,a才被销毁
下面写下重要执行过程:
i=0;f(0);
c++;(c=4)
a+b+c=0+1+4=5;返回值5
i=1;fun(1);
c++;(c=5)
a+b+c=1+1+5=7;
后面的一样道理
a+b+c=2+1+6=9;
明白了没有,这里关键就是对静态变量的理解