永发信息网

37、有以下程序 int a=2; int f(int *a) {return (*a)++;} main( ) { i

答案:1  悬赏:60  手机版
解决时间 2021-07-19 13:07
  • 提问者网友:听门外雪花风
  • 2021-07-18 15:03
37、有以下程序 int a=2; int f(int *a) {return (*a)++;} main( ) { int s=0; { int a=5; s+=f(&a); } s+
答案为什么是C,
37、有以下程序
int 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);
}
执行后输出结果是 ( C)
A)10 B)9 C)7 D)8
最佳答案
  • 五星知识达人网友:骨子里都是戏
  • 2021-07-18 15:50

从main开始
s+=f(&a); //调用f(),这个函数为+1的功能,自增,2+1,s=0+3
s+=f(&a);//同理,a=3+1 ,s=3+4
你以为是5,对吧?
int a=2;
看到这句没有,它是全局变量,优先使用它,a=5是迷惑你的
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯