作业帮 > 综合 > 作业

int a=2; int f(int a); {return (a)++;} main() {int s=0; {int

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/29 05:15:43
int a=2; int f(int a); {return (a)++;} main() {int s=0; {int a=5; s+=f(&&a);} s+=f(&&a); printf("%d
a=2;
int f(int a);
{return (a)++;}
main()
{int s=0;
{int a=5;
s+=f(&&a);}
s+=f(&&a);
printf("%d\n",s);
}
执行的输出结果是()
A 10 B 9 C 7 D 8
你的&&应该去掉吧?
结果是7.
{int a=5;
s+=f(&&a);//这里传的参数是5(局部变量)
}
s+=f(&&a);//这里以传的参数是2(全局变量)
再问: 有一个书上是这么写的&&a,我也不是很明白 f(a)的返回值是a ,而不是a++吗,能说下为什么吗 谢谢
再答: 有&&根本编译不过。返回a++,返回的还是a原来的值,之后a才加1,跟++a是不一样的(这个就是先加再返回)。