C语言中这个表达式怎么算

a-b%3*(int)(a+b)/4 ( 设 float a=13.4,b=7) 最后得到的数值是多少呢 为什么
2024-12-23 14:24:29
推荐回答(2个)
回答1:

答案是
-6.6
吧?
a-b%3*(int)(a+b)/4
关键是*(int)(a+b)/4
意思是a+b除以4的值(5.1)
浮点型
强制改为整型,所以就为
5
了;b%3

求余
运算
7%3

余数
是4
最后的
关系是:13.4-4*5=-6.6

回答2:

这是逗号表达式,整个表达式取最后一个子表达式的值,比如d=(a=3,b=4,c=a+b),那么d
=
c=a+b=3+4=7