11.若有定义:float a=3.0,b=4.0,c=5.0;则表达式1/2*(a+b+c) 的值为:( ).A)6.
来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/10/04 14:05:08
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呢
为什么答案是0.0呢
1/2*(a+b+c)
运算时,先算1/2结果是0,两个int数相除,结果还是int数据
再算0*(a+b+c) ,因为a b c中有float变量,所以结果为float类型数据0.0
这是一个运算类型隐式转换的问题,是计算机运算规定,转换原则为:
char ->short\ int\ long ->float -> double
再问: 1/2不是等于1么
再答: 1/2表示 1整除2 ,结果为0(取商) 1%2 表示 1对2取余数,结果为1(取余)
运算时,先算1/2结果是0,两个int数相除,结果还是int数据
再算0*(a+b+c) ,因为a b c中有float变量,所以结果为float类型数据0.0
这是一个运算类型隐式转换的问题,是计算机运算规定,转换原则为:
char ->short\ int\ long ->float -> double
再问: 1/2不是等于1么
再答: 1/2表示 1整除2 ,结果为0(取商) 1%2 表示 1对2取余数,结果为1(取余)
11.若有定义:float a=3.0,b=4.0,c=5.0;则表达式1/2*(a+b+c) 的值为:( ).A)6.
若有定义:float a=3.0,b=4.0,c=5.0; 则表达式 1/2*(a+b+c)的值为?
若已定义x和y为float类型,则表达式 =1,y=x+3/2 的值是() A、1 B、2 C
1,若有以下定义,char a;int b;float c;double d;则表达式a*b+d-c值的类型为( )
若有定义:int b=7;float a=2.5,c=4.7;则下面的表达式 a+(int)(b/3*(int)(a+c
若有定义:int a=2,b=3;float x=3.5,y=2.5;则下面表达式的值为_______ (float)(
若有定义 int b=7;float a=2.5, c=4.7;则下列表达式 a+(int)(b/3*(int)(a+c
C语言中.若定义float a;则表达式a=1,a+1,a+=a的值是?
若有定义:int a=3,b=2,c=1;,则表达式f=a>b>c的值为
设有定义语句float a=3.0,b;则执行b='a'+1/2*a;表达式后b的值 是
为什么这个定义是错的?float a=1,*b=&a,*c=&b;
已知int a,b; float c; 则错误的表达式语句是( ) A.a=c+b; B.b+=a ; C.a=int