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

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

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

(a+b)>c * 2 && b !=5 || !(1/2)=(3+4)>2 * 2 && b !=5 || !(1/2) 根据运算优先级完成以下步骤运算: (3+4)>2 * 2 && 4 !=5 || !(1/2) =7>2 * 2 && 4 !=5 || !0 =7>2 * 2 && 4 !=5 || 1 =7>4&& 4 !=5 || 1 =1&& 4 !=5 || 1 =1&& 1 || 1 =1...

根据从左到右计算顺序,结合运算符优先级,根据定义 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...

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

a[1]是数组的第2个元素(第一个是a[0]), 所以 a[1]的地址是数组的首地址+1,数组的首地址也可以用 a 表示,所以 a+1是 a[1]的存放地址,所以*[a+1]=a[1]

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