C语言习题,进来帮忙看一下
来源:百度知道 编辑:UC知道 时间:2024/05/07 16:14:31
下列程序段的输出是_____。
# include <stdio.h>
int f(int x)
{ static y=1;
y++;
x += y;
return x;
}
void main()
{ int k;
k=f(3);
printf("%d %dn", k, f(k));
}
后面一个输出,谁能帮解释一下,谢谢
# include <stdio.h>
int f(int x)
{ static y=1;
y++;
x += y;
return x;
}
void main()
{ int k;
k=f(3);
printf("%d %dn", k, f(k));
}
后面一个输出,谁能帮解释一下,谢谢
5 8
y是静态变量,所以每调用一次其值改变一次
f(3)=5;
此时y=2,k=5;
后来在printf中再调用一次,y=3;
那么f(k)=3+k=8
我没调试过程序,不知道答案对不对呵呵