有如下程序: #include<stdio.h> intfun() { staticintx=0; x+=2;returnx; } main() { inti,s=1; for(i=1;i<=2;i++)s=fun(); printf("%d\n

admin2017-04-21  18

问题 有如下程序:
#include<stdio.h>
intfun()
{
staticintx=0;
x+=2;returnx;
}
main()
{
inti,s=1;
for(i=1;i<=2;i++)s=fun();
printf("%d\n",s);
}
该程序的输出结果为(    )。

选项 A、0
B、1
C、4
D、8

答案C

解析 本题考查静态局部变量的使用。每一次对于静态局部变量的修改都会被保留。第一次循环,调用fun()函数,此时x值为2,并被保留;第二次循环,调用fun(),结果为4,因此程序输出结果为4。
转载请注明原文地址:https://jikaoti.com/ti/Z3vuFFFM
0

随机试题
最新回复(0)