单选题
有以下程序:
#include <stdio.h>
int fun()
static int x=1;
x*=2;return x;
main()
int i,s=1;
for(i=1;i<=3;i++)s=fun();
printf("%d/n",s);
程序运行后的输出结果是
A) 0 B) 1 C) 4 D) 8
【正确答案】
D
【答案解析】[解析] x被声明为静态变量,第一次调用fun()后,x的值为2,第二次调用时直接执行x*=2,值为4,第三次调用时直接执行x*=2,值为8。