关于高级语言程序设计的问题001

来源:百度知道 编辑:UC知道 时间:2024/05/24 11:37:43
问题:假设在程序中,x,y,z均被定义为整型,且已赋大于1的值,则下列能正确表示 1/xyz的表达式:
a:1/x*y*z
b:1/(x*y*z)
c:1/x/y/(float)z
d:1.0/x/y/z
请各位给出答案的理由。谢谢!
我还是不是很理解,这题目考察我们的是什么知识点呢?问题中“1/xyz”他是表示“(1/x)*y*z”呢,还是1/(x*y*z)?
这里仅是对C语言的。为什么答案B不对呢?答案B的结果是整数,也就是0,而D是实数,也就是带小数点。这个我理解的!

参考答案:你不是环保袋,不要总是装啊装啊装啊装。

D
1/(x*y*z) 是整型
1/X 是整型
1.0/X 是浮点型 以后都是

在一些语言中(比如C语言),如果整形变量x值为2,1/x的值将为0(x作为整数2进行整数运算);
而1.0/x的值为0.5(x被隐式转换为实数2.0进行浮点运算);