C语言.拜托大家给我个答案 注意:要看仔细哦

来源:百度知道 编辑:UC知道 时间:2024/07/02 08:29:14
下列程序运行后的输出结果是
main()
{ int a,b,c;
a=10; b=20; c=(a%b<1)∣∣(a/b>1);
printf(“%d %d %d\n”,a,b,c);
}
要看仔细哦

10 20 0
经过ios9001验证!

呵呵

a=10 好说
b=20 好说!
c呢 = a%b<1是真的吗? 是真的就是1否则就是0 也就是说c的值是后面的表达式的真假 真在c里面就是1吧 假的话就是0咯 所以c也就理解咯

呵呵

a%b就是a除以b取余数,所以a%b=10%20=10 而10〉1 所以a%b<1的值为假,a/b就是我们数学上的那种除,就取整数部分,所以a/b=10/20整数部分为0 ,所以a/b>1的值也为假,所以c 的值为假,也就是等于0 至于前面的a和b的值就不变了,所以输出结果就是:
10 20 0
因为(“%d %d %d\n”,a,b,c); 期间是以空格隔开的,所以输出的时候也是以空格来隔开

10 20 0
c的值:%和/优先于>和<,所以c=(10<1)||(0>1),所以为0。

我的答案是:
10 20 0

10 20 0

10,20,0