问题 单项选择题

下列程序的输出结果是( )。
#include <stdio.h>
f(int a)
int b=0;
static int c=4;
a=c++;b++;
return(a);

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

A) 4
B) 7
C) 6
D) 5

答案

参考答案:D

解析:本题考查静态变量的使用方法和for循环。在函数调用时,static变量在函数调用结束后所作的所有变化均不保持,所以当i=1时,第2次进入f函数时c=5,所以最终main函数中c的值为5。

问答题 简答题
多项选择题