单选题 有以下程序:
int fun(int x[],int n)
static int sum=0,I;
for(i=0;i<n;i++)sum+=x[i];
return sum;

main()
int a[]=1,2,3,4,5,b[]=6,7,8,9,s=0;
s=fun(a,5)+fun(b,4);printf("%d/n",s);

程序执行后的输出结果是______。
A) 45 B) 50 C) 60 D) 55

【正确答案】 C
【答案解析】[解析] fun函数中用static声明的局部变量sum的值在函数调用结束后不消失而保留原值,即占用的存储单元不释放,在下一次调用该函数时,该变量已有值,就是上一次函数调用结束时的值。