下面程序的输出结果是 B 。
mma(int a,int b)
{int c;
a+=a;b+=b;c=mmb(a,b);
return c*c;
}
mmb(itn a,int b)
{int c;
c=a*b%3;
return c;
}
main()
{int x=11,y=19;
printf(“%d\n”,mma(x,y));
}
(67) A、1 B、4 C、9 D、16
告诉我详细的解答步骤和跟书本哪一章节内容有关
这道C语言题如何解
答案:4 悬赏:70 手机版
解决时间 2021-07-18 08:59
- 提问者网友:浩歌待明月
- 2021-07-17 08:11
最佳答案
- 五星知识达人网友:酒者煙囻
- 2021-07-17 09:02
这个跟函数的调用的知识点有关,在mma(int a,int b)里,最终a=22,b=38进入mmb(itn a,int b)函数,
在mmb(itn a,int b)计算后c=2,返回mma(itn a,int b)的c为2,注意return c*c;返回的是2*2,所以返回main函数的是4,输出的是4
全部回答
- 1楼网友:我住北渡口
- 2021-07-17 11:03
mma(int a,int b)//(11,19) {int c; a+=a;b+=b;c=mmb(a,b);//2: a=22;b=38 return c*c;//5:c*c=2*2=4 } mmb(itn a,int b)//3: 22,38 {int c; c=a*b%3;//4:c=22*38%3 =2 return c; } main() {int x=11,y=19; printf(“%d\n”,mma(x,y));//1:相当于传值mma(11,19); }
这题就是运用函数的传递和相互调引。
- 2楼网友:患得患失的劫
- 2021-07-17 10:42
mma(11, 19)
mma中,a=a+a=11+11=22,b=b+b=19+19=38,c=mmb(22,38)
mmb中,c=22*38%3=2,mmb返回2
mma返回2*2=4.
- 3楼网友:我住北渡口
- 2021-07-17 09:35
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯