假设在程序中a、b、c均被定义为整形,所赋的值都大于1,则下列能正确表示代数式的表达式是()求解及原因~A.0/a*b*c B.1/(a*b*c) C.1/a/b/(float)c D.1.0/a/b/c
问题描述:
假设在程序中a、b、c均被定义为整形,所赋的值都大于1,则下列能正确表示代数式的表达式是()求解及原因~
A.0/a*b*c B.1/(a*b*c) C.1/a/b/(float)c D.1.0/a/b/c
答
D
程序在取第一个数1.0之后,再与a计算,结果会是float(因为1.0是float),然后结果就一直是float
A,B都是整型,没有任何类型转换,C中,仅在最后一次把c做强制转换,前两部的计算都是按整型