在C语言中(1/2)*(a+b)*h和 (a+b)*h*(1/2)为什么结果不一样?第一个结果是0

1个回答
展开全部
摘要 C语言中的除号/身兼两职:
咨询记录 · 回答于2021-12-08
在C语言中(1/2)*(a+b)*h和 (a+b)*h*(1/2)为什么结果不一样?第一个结果是0
C语言中的除号/身兼两职:
整除和普通除
我们数学上的除法叫普通除法
如:
8÷4=2
1÷2=0.5
在计算机上,还有一种除法叫整除运算(就是只取整数运算)。数学上没有这种运算。
1/2((a+b)h)这个为啥能得出来,而不是得0
整除就是商只取整数。如:
4÷2=2
而1÷2=0
在C语言中,整除与普通除法共用一个运算符/
算完括号里的,从左到右算,为啥没得0
C语言系统的判断整除与普通除法的依据是看除数与被除数的类型
未知数都是浮点型
当两个数都是整数时,就用整除。当其中有一个是浮点数或小数时,就用普通除法
好的
谢谢
下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消