问题
填空题
以下程序运行后的输出结果是______。
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");
答案
参考答案:010111212
解析: 函数fun共执行了3次。第一次执行,形参a=5,自动变量b=0,静态变量c=3;在经过语句b++;c++;后,自动变量b=1,静态变量c=4,返回值a+b+c=10。第二次执行,形参a=5,自动变量b=0,静态变量c保持上次取值c=4;在经过语句b++;c++;后,自动变量b=1,静态变量c=5,返回值a+b+c=11。第三次执行,形参a=5,自动变量b=0,静态变量c保持上次取值c=5;在经过语句b++;c++;后,自动变量b=1,静态变量c=6,返回值a+b+c=12。