单选题 下列程序执行输出的结果是______。
#include<stdio.h>
f(int a)
int b=0;
static c=3;
a=c++;b++;
return(a);

main()
int a=2,i,k;
for(i=0;i<2;i++)
k=f(a++);
printf("%d/n",k);

A.3 B.4 C.5 D.6

【正确答案】 B
【答案解析】[解析] 由于函数f(int a)中定义了一个静态变量c,所以执行for循环i=0时,k=f(2)=3,之后c的值变为4;i=1时,k=f(3)=4,之后c的值变为5。for循环结束,输出k的值为4。