11.若有定义:float a=3.0,b=4.0,c=5.0;则表达式1/2*(a+b+c) 的值为:( ).A)6.0 B)0.0 C)6 D)
为什么答案是0.0呢
人气:128 ℃ 时间:2020-06-28 08:48:08
解答
1/2*(a+b+c) 运算时,先算1/2结果是0,两个int数相除,结果还是int数据再算0*(a+b+c) ,因为a b c中有float变量,所以结果为float类型数据0.0这是一个运算类型隐式转换的问题,是计算机运算规定,转换原则为:char ->short\...1/2不是等于1么1/2表示 1整除2 ,结果为0(取商)1%2 表示 1对2取余数,结果为1(取余)
推荐
- 若有定义:int b=7;float a=2.5,c=4.7;则下面的表达式 a+(int)(b/3*(int)(a+c)/2)%4 的值
- 若有定义:float a=3.0,b=4.0,c=5.0; 则表达式 1/2*(a+b+c)的值为?
- 1,若有以下定义,char a;int b;float c;double d;则表达式a*b+d-c值的类型为( )
- 26.下面哪个表达式的值为4.( ) A.11/3 B.11.0/3 C.(float)11/3 D.(int)(11.0/3+0.5)
- 若已定义x和y为float类型,则表达式 =1,y=x+3/2 的值是() A、1 B、2 C
- 两块地72公顷,第一块的五分之二与第二块地的九分之五种西红柿,余下的共39公顷种茄子,第一块地是多少公顷?
- 求老师细批一下雅思的小作文 100分送上
- 为什么崇尚科学反对迷信?
猜你喜欢