单选题
14.下面( )表达式的值为4.
A
11/3
B
11.0/3
C
(float)11/3
D
(int)(11.0/3+0.5)
答案解析
正确答案:D
解析:
解析:(1)相同数据类型的元素进行数学运算(+、-、*、/)得到结果还保持原数据类型。(2)不同数据类型的元素进行数学运算,先要统一数据类型,统一的标准是低精度类型转换为高精度的数据类型。选项A,11与3为两个整数,11/3结果的数据类型也应为整数,因此将3.666666的小数部分全部舍掉,仅保留整数,因此11/3=3.选项B,11.0为实数,3为整数,因此首先要统一数据类型,将整型数据3转换为3.0,转换后数据类型统一为实型数据,选项B变为11.0/3.0,结果的数据类型也应为实型数据,因此选项B11.0/3=3.666666选项C,先将整数11强制类型转换,转换为实型11.0,因此选项C变为11.0/3,其后计算过程、结果与选项B同选项D,首先计算11.0/3,其计算过程、结果与选项B同,得到3.666666;再计算3.666666+0.5=4.166666,最后将4.166666强制类型转换为整型,即将其小数部分全部舍掉,结果为4
题目纠错
程序设计章节汇总
相关题目
单选题
18.下列叙述中正确的是( )
单选题
17.C语言中用于结构化程序设计的3种基本结构是( )
单选题
16.以下叙述中正确的是( )
单选题
15.字符串”\\\”ABC\”\\”的长度是( )
单选题
14.若x为int型变量,则执行以下语句后
,x的值为( )
单选题
13.以下( )是不正确的转义字符。
单选题
12.设有说明:charw;intx;floaty;doublez;则表达式w*x+z-y值的数据类型为:( )
单选题
11.若有定义:inta=7;floatx=2.5;y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是:( )
单选题
10.在C语言中,字符型数据在内存中以()形式存放( )
单选题
9.已知各变量的类型说明如下
,则以下不符合C语言语法的表达式是:( )
