单选题 若有如下程序:
#include<iostream>
using namespaee std;
int fun()
{
static int i=0;
int s=1;
s+=i;
i++;
return s;
}
int main()
{
int i,a=0;
for(i=0;i<5;i++)
a+=fun();
cout<<a<<end1;
return 0;
}
程序运行后,输出的结果是{{U}} {{/U}}。
  • A. 20
  • B. 24
  • C. 25
  • D. 15
【正确答案】 D
【答案解析】[解析] 由主函数入手,在for循环中调用fun函数,其中调用次数为5次。fun中i为静态变量,有效到文件结束。第一次调用fun后为s=1,a=1;第二次调用后s=2,a=3;第三次s=3,a=6;第四次 s=4,a=10;第五次s=5,a=15。