问题
单项选择题
有以下程序:
#include<stdio.h>
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的功能是求数组的n个元素之和。fun(a, 5)=15。由于sum是静态局部变量,所以保持15不变,fun(b, 4)=45,所以s=fun(a, 5)+fun(b, 4)=60。