问题 填空题

以下程序的输出结果是 【9】
#include <stdio.h>
void fun()
static int a=0;
a + =2;
printf("%d",a);

main()
int cc;
for(cc = 1;cc < 4; cc++) fun();
printf("\n");

答案

参考答案:246

解析: 函数fun中的a是static类型的变量,语句static int a=0;是给a赋初值0,并且只初始化一次。由于a是静态的,所以当fun函数返回main函数时,a值仍然保留在其所分配的存储空间。函数第一次调用时a被赋值2,然后每调用一次增加2。

单项选择题
单项选择题