有以下程序 #include int f(int n);
答案:2 悬赏:20
解决时间 2021-02-08 17:09
- 提问者网友:喵星人荷西
- 2021-02-07 20:35
有以下程序 #include int f(int n);
最佳答案
- 二级知识专家网友:偏爱自由
- 2021-02-07 21:36
第一次f(a)
a=1, n=3
n+=1 = 4
a++ = 2
s = n = 4
第二次f(a)
a=2, n=3
n+=2 = 5
a++ = 3
s += n = 4+5 = 9
输出9
a=1, n=3
n+=1 = 4
a++ = 2
s = n = 4
第二次f(a)
a=2, n=3
n+=2 = 5
a++ = 3
s += n = 4+5 = 9
输出9
全部回答
- 1楼网友:糜废丧逼
- 2021-02-07 21:48
#include
int f(int m)
{
static int n=0; //静态变量,只初始化一次,第二次为上一次的剩余结果
n+=m;
return n; //第一次n=1 第二次m=1,n+=m=2
}
void main()
{
int n=0;
printf("%d,",f(++n)); //++n,先自增,后调用n,相当于调用f(1)
printf("%d\n",f(n++)); //n++,先调用n,后自增,相当于调用f(1)
}结果为1,2
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯