设有说明:char w;int x;float y;double z;则表达式w*x+z-y值的数据类型为( )

A) float B) char C) int D) double
答案是哪个,要有详细说明。还有下面这题,结果是否一样。
设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为

double。

设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型

因为在计算这个表达式时,首先要将各个变量强制转化为最高的存储类型。相当于(double)w*(double)x+(double)z-y,所以是double类型了。

c语言中两个不同类型的运算,要转化成同类型的,转换从低到高 char-->float-->short-->int-->double。

扩展资料

double(双精度浮点型)比起单精度浮点数(float),double(双精度浮点数)使用64位(8字节)来储存一个浮点数。

它可以表示十进制的15或16位有效数字,负值取值范围为-1.7976E+308到-4.94065645841246544E-324,正值取值范围为4.94065645841246544E-324到1.797693E+308

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-04-22
答案是 D double型 下面的题的答案也是double型
c语言中 两个不同类型的运算 要转化成同类型的 转换从低到高 char-->float-->short-->int-->double本回答被提问者和网友采纳
第2个回答  2020-06-08
设有说明:char w;int x;float y;double z;则表达式w*x+z-y值的数据类型为( 未填 )。 错误 正确答案:D
A.float
B.char
C.int
D.double
第3个回答  2011-08-21
双精度型
因为会自动转为通用类型来计算
第4个回答  2018-01-02
应该是char→int→float→double
相似回答