试题题干
int f(int n)
{ static int m=5;
return ++m+n;
}
main()
{ int i;
for(i=0;i<3;i++)printf(“%5d",f(i));
printf("\n");
}
参考答案
试题解析
在主函数中,当i=0,输出f(0)的值,求f(0)的值需要调用函数f(),即返回值为++m+n=6+0=6,m的值为6;
当i=1,输出f(1)的值,调用函数f(),即返回值为++m+n=7+1=8,m的值为7;
当i=2,输出f(2)的值,调用函数f(),即返回值为++m+n=8+2=10,m的值为8;
当i=3,不符合i<3,结束循环。