问题
填空题
以下程序运行后的输出结果是 【12】 。 fun(int a) { int b=0; static int c=3; b++; c++; return(a+b+c); } main() { int i, a=5;for(i=0; i<3; i++)printf("% d % d", i, fun(a));printf("\n"); }
答案
参考答案:0 10 1 11 2 12
解析: 函数fun里有一个静态变量c,调用fun时,只对c进行一次赋值,以后再调用时c为上次调用函数的值,因此i=0时,fun(5)=5+1+4=10,i=1时,fun(5)=5+1+5=11,i=2时,fun(5)=5+1+6=12。