wxsh.net
当前位置:首页>>关于在C语言中(1/2)*(a+b)*h和 (a+b)*h*(1/2)为什么结...的资料>>

在C语言中(1/2)*(a+b)*h和 (a+b)*h*(1/2)为什么结...

你是不是a,b取的都是整形(int类型)?这是(1/2)*(a+b)*h中先算(1/2)*(a+b)。如果这个数小于0.5就会自动四舍五入变为零。所以再乘h还是零。而后面一种先算(a+b)*h再除以二。所以不为零

LZ您好,我想应该选择答案B在C语言中“/”号的两个操作数都为整数的话,结果为整数,其中任何一个为实数的话,结果为实数,如果变量a,b,h定义为实数,答案A,C,D都没有问题。只要答案B 中(1/2)的结果为零,所以最后的结果也为零。如果我的解答...

1/2结果为0. 1和2为整型 结果也去整为0. 但是1.0/2为0.5 因为1.0是浮点型

||有短路规则,左边的为真就不会进行右边的判断了,所以Cad在C语言中没见过,c选项后边应该是指针(&a就是指针类型了)应该选D吧!我的机器上是这样的。要么你程序没有写完。“(a=4*5,a*2)”,a+6"你是原表达式吗,怎么中间有一个”。因为宏之后是...

!(a+b)+c-1&&b+c/2=1

s=(a+b+c)/2 是整数操作 例如:1/2结果是0,3/2结果是1。 s=1.0/2*(a+b+c) 为浮点数操作 1.0/2结果是0.5。

B中1/2=0,要=0.5,应该是1.0/2才行。 D中结果应该有小数部分,例如X.000000

这是一个逗号表达式 首先执行 a=b=4,将4赋值给a和b 然后执行a+1表达式,a中任然存放4 然后执行b+=2,等同于b=b+2,此时b的值被赋值为6 最后执行a+b,结果为10 整个逗号表达式的值为,最后一个表达式的值,即10 希望能够帮到你。

float a=0,b=1,s=0; int i,n; scanf("%f",&n); for(i=0;i

C语言提供一种特殊的运算符——逗号运算符。用它将两个表达式连接起来。如: 3+5,6+8 称为逗号表达式,又称为“顺序求值运算符”。逗号表达式的一般形式为 表达式1,表达式2 逗号表达式的求解过程是:先求解表达式1,再求解表达式2。整个逗号表达式...

网站首页 | 网站地图
All rights reserved Powered by www.wxsh.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com