第3章测试答案
1.若有声明int m=7,n=4;float a=38.4,b=6.4,x;则执行语句x=m/2*n+a/b+1/2;后,x的值为:
|
A.20
B.18.5
C.18
D.20.5
x=3*4+6+0=18
2.尝试执行句:
unsigned int i = 2;
int j = -3;
cout<<(i*j)<<endl;
|
输出结果是下面哪一个?
A.6
B.一个无符号整数
C.-6
D.编译出错,无输出
3.下列字符串常量表示中,错误的是()。
|
A."\"yes\"or\"
|
B."abcdef\0"
C."ABCD\t\\"
D."\\Right\""
4.若变量a 是int 类型,并执行了语句a='A'+1.6; 下列哪一个叙述是正确的?
A.不允许字符型与浮点型相加
B.a 的值是字符'A'
C.a 的值是浮点型
D.a 的值是字符'B'
5.下列程序的运行结果是
int main(){
int a=5,b=4,c=3,d;
d = (a > b > c);
cout<<d<<endl;
return 0;
}
A.0
B.5
C.1
D.3
6在算术表达式中,下面哪一种类型转换是错误的?
A.一个char 值加上一个short 值的类型为int。
B.一个unsigned int 值加上一个int 值的类型为int。
C.两个unsigned char 值相加的类型为int。
D.一个int 值加上一个float 值的类型为float。
7.有下面语句,变量a 的值为____。
int a = 3;if (++a < 4)a++; a++;
A.7
B.3
C.5
D.4
8.下面哪一个表达式能正确表示逻辑关系:"age≥18 或age≤60"?
A.age>=18 or age<=60
B.age>=18 || age<=60
C.age>=18 && age<=60
D.age>=18 | age<=60
9.表达式16/4*float(4)+2.0 的数据类型是 。
A.float
B.不确定
C.double
D.int
10.整型变量m 和n 的值相等,且为非0值,下面哪一个表达式的值为零?
A.m | n
B.m ^ n
C.m || n
D.m & n
11.以下运算符中运算对象一定不能是double类型的是
A.%
B.<=
C.=
D./
12.设有int a=3,b=2,x=4; 则cout<<(a<x<b)输出为:
A.1
B.0
C.5
D.3
13.若有int a=1,b=2,c=3,d=4; 则表达式b<a?a:c<d?c:d的值为(运算符?:的结合性为从左向右):
A.3
B.2
C.1
D.4
14.执行下面语句:
int i = -5;
cout<<-(i++)<<";";
cout<<i<<endl;
输出结果是下面哪一个?
A.4;-4
B.5;-4
C.4;-5
D.5; -5