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是浮点型

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

根据从左到右计算顺序,结合运算符优先级,根据定义 a = 3, b = 4, c = 5,假定 a,b,c 为 int。真值为1,假值为0。 计算步骤如下: 1、计算 a + b,结果为 a + b = 7 2、计算 !( a + b) 结果为 0,也可以认为是false(假)。 3、计算 c/2,假定c...

a[1]的值存在a+1这个地址中*(a+1)就是取出这个地址中的内容,他们都是同一个东西当然值都一样

a和b虽然都是浮点数,但第一个程序的除法是整数除法,两个整数相除结果只取整数部分,所以第一个程序中a和b永远都是0,而第二个程序中,a和b将整数结果转化为了浮点数,所以1/a和1/b都是浮点数除法,结果不为0。

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

前一个的结果是整数,不是整数的略去小数部分只保留整数部分。后一个的结果是小数 C语言中 整形相除时两个数为同一类型,结果也是整形,这个你应该懂,也没啥说的。 在整形除以浮点型,或者浮点型除以整形时,会触发隐式类型转换。得出结果的类...

if (c = a+b)与if (c == a+b)不一样。 第一个是将a+b的值赋给c,如果结果不为零,则条件判断结果为真,否则为假; 第二个是将a+b的值与c的值比较,如果相等则条件判断结果为真,否则为假。 这个条件语句的书写方式一般并不被提倡。

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