第03部份 C表达式.docx
《第03部份 C表达式.docx》由会员分享,可在线阅读,更多相关《第03部份 C表达式.docx(13页珍藏版)》请在冰豆网上搜索。
第03部份C表达式
第3章.运算符和表达式
一、单选题
1.C表达式(10/3)*3的结果是:
( )
A.10 B.9 C.9.99 D.27
(知识点:
算术运算; 难度系数:
1; 答案:
B)
2.表达式17%4/8的值为:
( )
A.0 B.1 C.2 D.3
(知识点:
算术运算; 难度系数:
1; 答案:
A)
3.若有代数式3ae/bc,则不正确的C语言表达式是:
()。
A.a/b/c*e*3 B.3*a*e/b/c C.3*a*e/b*c D.a*e/c/b*3
(知识点:
算术运算; 难度系数:
1; 答案:
C)
4.若有以下程序段:
inta=1,b=2,c;c=a/b*a;则执行后,c中的值是:
( )
A.0 B.0.5 C.1 D.2
(知识点:
算术运算; 难度系数:
1; 答案:
A)
5.在C语言中,执行表达式x=abs(8-10)后,则x的值为:
( )
A.-2 B.2 C.18 D.80
(知识点:
算术运算; 难度系数:
1; 答案:
A)
6.关于算术运算符“%”的功能,下面描述正确的是:
( )
A.此运算是求某一整数对另一整数的百分比
B.此运算是求某一整数被另一整数相除时的整数商
C.此运算是求某一整数被另一整数相除时的余数
D.以上都不正确
(知识点:
算术运算; 难度系数:
1; 答案:
C)
7.在TC中,能正确表示a≥10或a≤0的关系表达式是:
( )
A.a>=10ora<=0 B.a>=10,a<=0
C.a>=10&&a<=0 D.a>=10||a<=0
(知识点:
关系和逻辑运算; 难度系数:
2; 答案:
D
8.执行intx,y,z,t;x=y=z=1;t=++x||++y&&++z;语句后,t的值为:
( )
A.2 B.1 C.0 D.不定值
(知识点:
关系和逻辑运算; 难度系数:
1; 答案:
B)
9.已知x=43,ch=’A’,y=0;则表达式x>=y&&ch<’B’&&!
y的值是:
( )
A.0 B.语法错 C.1 D.“假”
知识点:
关系和逻辑运算; 难度系数:
1; 答案:
C)
10.设有inta=2,b;则执行b=a&&1;语句后,b的结果是:
( )
A.0 B.1 C.2 D.3
(知识点:
关系和逻辑运算; 难度系数:
1; 答案:
B)
11.设x=2,y=3,z=4,则表达式(x+y>z)&&(y==z)&&x||y+z&&y+z的值为:
( )
A.逻辑假 B.逻辑真 C.0 D.1
(知识点:
关系和逻辑运算; 难度系数:
1; 答案:
D)
12.在C语言中。
能正确表示关系X<=Y<=Z的表达式为:
( )
A.(X<=Y)&&(Y<=Z) B.(X<=Y)AND(Y<=Z)
C.(X<=Y<=Z) D.(X<=Y)||(Y<=Z)
(知识点:
关系和逻辑运算; 难度系数:
1; 答案:
A)
13.语句printf(“%d”,(a=2)&&(b=-2));的输出结果是:
( )
A.无输出 B.结果不确定 C.-1 D.1
(知识点:
关系和逻辑运算; 难度系数:
1; 答案:
D)
14.设intm=1,n=2;则表达式m++==n的值是:
( )
A.1 B.2 C.3 D.0
(知识点:
关系和逻辑运算; 难度系数:
1; 答案:
D)
15.能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假"的表达式是:
( )
A.(x>=1)&&(x<=10)&&(x>=200)&&(x<=210)
B.(x>=1)||(x<=10)||(x>=200)||(x<=210)
C.(x>=1)&&(x<=10)||(x>=200)&&(x<=210)
D.(x>=1)||(x<=10)&&(x>=200)||(x<=210)
(知识点:
关系和逻辑运算; 难度系数:
1; 答案:
C)
16.判断char型变量ch是否为大写字母的正确表达式是:
( )
A.(‘A’<=ch<=‘Z’)
B.(ch>=‘A’)||(ch<=‘Z’)
C.(ch>=‘A’)&&(ch<=‘Z’)
D.(‘A’<=ch)AND(‘Z’>=ch)
(知识点:
关系和逻辑运算; 难度系数:
1; 答案:
C)
17.在C语言中,表达式:
10!
=9的值是:
( )
A.True B.非零值 C.0 D.1
(知识点:
关系和逻辑运算; 难度系数:
1; 答案:
D)
18.设有intx,y,z;,若运行如下程序段x=y=z=0;++x&&++y||++z;后,x,y,z的值分别是:
( )
A.x=1,y=0,z=0 B.x=1,y=1,z=1 C.x=1,y=1,z=0 D.x=1,y=0,z=1
(知识点:
关系和逻辑运算; 难度系数:
2; 答案:
C)
19.设x,y,z都是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是:
( )
A.‘x’&&‘y’B.x<=yC.x||y+z D.!
(x)
(知识点:
关系和逻辑运算; 难度系数:
2; 答案:
D)
20.下列只有当整数x为奇数时,才是逻辑“真”的表达式是:
( )
A.x%2==0B.!
(x%2==0)C.(x-x/2*2)==0D.!
(x%2)
(知识点:
关系和逻辑运算; 难度系数:
2; 答案:
B)
21.下面表述20( )
A.20C.x>20&&x<30||x<-100D.x!
>30&&x!
<20||x<-100
(知识点:
关系和逻辑运算; 难度系数:
1; 答案:
C)
22.设a=3,b=4,c=5,d=6,则表达式:
a>b?
c:
d的值为:
( )
A.3 B.4 C.5 D.6
(知识点:
条件表达式; 难度系数:
1; 答案:
D)
23.若有intw,x,y,z,m;均为int型变量,如下程序执行后m的值为:
( )
w=1;x=3;y=2;z=4;
m=(wy:
z;
m=(mx:
y;
m=(my:
x;
A.1B.2C.3D.4
(知识点:
条件表达式; 难度系数:
2; 答案:
B)
24.假定有以下变量定义intk=7,x=12;下列其值为3的表达式是:
( )
A.x%=(k%=5) B.x%=(k-k%5)
C.x%=k-k%5 D.(x%=k)-(k%=5)
(知识点:
赋值运算; 难度系数:
1; 答案:
D)
25.执行语句“inta=12;a+=a*a;”后的值是:
( )
A.156 B.288C.164 D.186
(知识点:
赋值运算; 难度系数:
1; 答案:
A)
26.设有定义:
inta=10;则表达式a+=a*=a的值为:
( )
A.10 B.100 C.200 D.1000
(知识点:
赋值运算; 难度系数:
1; 答案:
C)
27.下面为C语言中正确表达式的是:
( )
A.a+b=5B.56=a++ C.i=i++D.5.6+6.2%3.1
(知识点:
赋值运算; 难度系数:
2; 答案:
C)
28.执行语句“inta=12;a+=a-=a*a;”后,a的值是:
( )
A.-264 B.-286 C.-164D.-186 (知识点:
赋值运算; 难度系数:
2; 答案:
A)
29.下列合法的语句是:
( )
A.a=1,b=2 B.++a;C.a=a+1=5 D.y=int(a);
(知识点:
赋值运算; 难度系数:
2; 答案:
B)
30.设有n=10,I=4,则赋值运算n%=I+1执行后,n的值( )
A.0 B.1 C.2 D.3(知识点:
赋值运算; 难度系数:
1; 答案:
A)
31.设变量t为int型,下列选项中不正确的赋值语句是:
( )
A.++t;B.n1=(n2=(n3=0));C.k=i==m;D.a=b+c=1;(知识点:
赋值运算; 难度系数:
1; 答案:
D)
32.设inta,b,c;,执行下列a=b=1;a++;b+1;c=a+b--;语句后,a,b和c的值分别是:
( )
A.2,1,2B.2,0,3C.2,2,3D.2,1,3
(知识点:
自增与自减; 难度系数:
2; 答案:
B)
33.设x为int型变量,则执行以下语句x=10;x=x+--x;后,x的值为:
( )
A.10 B.20 C.18 D.19
(知识点:
自增与自减; 难度系数:
2; 答案:
C)
34.若有inta,b,c=8;,则执行:
a=c++;b=++c;之后,变量a,b的值分别是:
( )
A.9,10B.10,10 C.8,10 D.8,11(知识点:
自增与自减; 难度系数:
2; 答案:
C)
35.关于自增与自减运算符,下面描述正确的是:
( )
A.此类运算符只能用于整数类型的变量
B.此类运算符也可以用于常量
C.此类运算符也可以用于实型的变量
D.此类运算符对变量的改变量可以由用户设定
(知识点:
自增与自减; 难度系数:
2; 答案:
C)
36.执行表达式a=3*5,a+15后,变量a的值为:
( )
A.60 B.30 C.15 D.90
(知识点:
逗号表达式; 难度系数:
1; 答案:
C)
37.执行表达式a=(a=3*5,a+15)后,变量a的值为:
( )
A.60 B.30 C.15 D.90
(知识点:
逗号表达式; 难度系数:
1; 答案:
B)
38.若有doublex,y;,则表达式:
x=1,y=x+3/2的值是:
( )
A.1 B.2 C.2.0 D.2.5
(知识点:
逗号表达式; 难度系数:
2; 答案:
C)
39.设有inti,j,k;则表达式(i=1,j=2,k=3,i&&j&&k)的值为:
( )
A.1 B.2 C.3 D.0
(知识点:
逗号表达式; 难度系数:
1; 答案:
A)
40.下面运算级别最高的运算符是:
( )
A.赋值运算符B.关系运算符C.算术运算符D逗号运算符
(知识点:
运算符的优先级; 难度系数:
1; 答案:
B)
41.下面运算级别最低的运算符是:
( )
A.赋值运算符B.关系运算符C算术运算符D.逗号运算符
(知识点:
运算符的优先级; 难度系数:
1; 答案:
D)
42.下面运算符中,优先级最高的是:
( )
43.A.<=B.==C.%D.&&
(知识点:
运算符的优先级; 难度系数:
1; 答案:
C)
44.设一表达式中有int、long、char等类型的数据,则表达式值的类型数据是:
( )
A.int B.char C.long D.double
(知识点:
多类型混合运算; 难度系数:
1; 答案:
C)
45.设有inti;charc;floatf;下列其值为整数的表达式是:
( )
A.i+f B.i*c C.c+f D.i+c+f
(知识点:
多类型混合运算; 难度系数:
1; 答案:
B)
46.设一表达式中有int、float、char等类型的数据,则表达式值的类型数据是:
( )
A.int B.char C.float D.double
(知识点:
多类型混合运算; 难度系数:
1; 答案:
D)
47.设有变量说明charw;intx;floaty;doublez;,则表达式w*x-z-y的类型为:
( )
A.int B.char C.float D.double
(知识点:
多类型混合运算; 难度系数:
1; 答案:
D)
二、多选题
1.以下所列中,不合法的C表达式是:
( )
A、a=1,b=2B、++a C、a=a+1=5 D、y=int(a) E、a=b=c=10
(知识点:
运算符和表达式的概念; 难度系数:
3; 答案:
CD)
2.C语言中表达式众多,其语句又称表达式语句,下面为C语言表达式的有:
( )
A、算术表达式B、关系和逻辑表达式C、赋值表达式
D、逗号表达式 E、分号表达式
(知识点:
运算符和表达式的概念;难度系数:
1答案:
ABCD)
3.在C语言中,可以将多种数据类型的常数放在同一个表达式中进行混合运算,下面可以出现在C表达式中的常量有:
( )
A.整型常量 B.单精度实型常量 C.双精度实型常量
D.字符常量 E.字符串常量
(知识点:
运算符和表达式的概念; 难度系数:
1; 答案:
ABCD)
4.下面可以参与C算术运算符“%”运算的数据是:
( )
A.int B.char C.long D.float E.double
(知识点:
算术运算; 难度系数:
1; 答案:
ABC)
5.下面能够正确表示数学关系“1( )
A.1(x<=1)&&!
(x>=10)
D.1(x<=1||x>=10))
(知识点:
关系和逻辑运算; 难度系数:
2; 答案:
ABCE)
6.设有inta=1,b=2,c=3;,则下面逻辑式为“真”的有:
( )
A.a>b||a=b||b!
=c C.!
(a==b)&&!
(b==c)
D.(a=b)&&(b=c)E.a!
=b&&b!
=c
(知识点:
关系和逻辑运算; 难度系数:
2; 答案:
ABCDE)
7.下面关于条件表达式的描述中,正确的是:
( )
A.条件运算符是C语言中唯一的一个三目运算符;
B.条件运算符是由一个问号及一个冒号相连构成;
C.条件表达式可以代替一些简单的选择控制结构(if~else);
D.条件表达式的值也是逻辑值;
E.条件表达式必须要有三个表达式配合使用。
(知识点:
条件表达式; 难度系数:
2; 答案:
ACE)
8.下面关于赋值运算的描述中,正确的是:
( )
A.赋值运算是程序设计中特有的,而在数学中没有的一种运算;
B.赋值运算符的左侧必须是一个变量;
C.赋值表达式a=b=c=5是错误的,因为最右侧的赋值运算符的左侧不只一个变量;
D.赋值运算的功能是把一个表达式的值存放在某个变量中;
E.设a是整型变量,则a=5.6是不能运行的,因为不能把一个实数存放在一个整型变量中。
(知识点:
赋值运算; 难度系数:
2; 答案:
ABD)
9.设有inta,b;则下面关于自增与自减运算的描述中,正确的是:
( )
A.“a=b++”等价于“a=b,b=b+1”;
B.“a=b++”等价于“b=b+1,a=b”;
C.“a=++b”等价于“b=b+1,a=b”;
D.“a=++b”等价于“a=b,b=b+1”;
E.“a++=b++”等价于“a=b,a=a+1,b=b+1”;
(知识点:
自增与自减; 难度系数:
2; 答案:
AC)
10.下面关于逗号表达式的描述中,正确的是:
( )
A.逗号运算符是C语言中运算级别最低的一种运算符;
B.语句t=a;a=b;b=t;和语句t=a,a=b,b=t;是等价的;
C.若a是一个整数变量,则a=1,2,3是错误的,因为系统不清楚将哪个数存入a中;
D.语句a=(b+5,b=b+8);和语句a=d+5,b=b+8;是不等价的,因为a中存入的是不同的数据;
E.语句printf(“%d%d%d”,a+1,b+2,c+3);中的a+1,b+2,c+3就是一个逗号表达式。
(知识点:
逗号表达式; 难度系数:
2; 答案:
ABD)
11.下面5组运算符中,同组中运算级别相同的是:
( )
A.+、- B.*、/、% C.&&、||、!
D.>、>=、<、<=、==、!
= E.=、+=、-=、*=、/=(知识点:
运算符的优先级; 难度系数:
2; 答案:
ABE)
12.在C语言中可以把多种类型的数据放在同一个表达式中进行混合运算,那么在只有两类数据混合运算的情况下,下面不可能出现的表达式的值的数据类型是:
( )
A.charB.shortC.intD.longE.floatF.double
(知识点:
多类型混合运算; 难度系数:
3; 答案:
ABE)
13.下面与数学式a÷c×b等价的C语言表达式是:
( )
A.a*b/cB.a/c/bC.b*a/cD.a/(c*b)E.b/c*a
(知识点:
算术表达式; 难度系数:
1; 答案:
ACE)
三、判断题
1.( )C语言中有单目、双目和三目运算符之分,是指运算时各需要一个、两个和三个数据。
(知识点:
运算符和表达式的概念;难度系数:
1;答案T)
2.( )C语言中的表达式就是数学中的计算公式。
(知识点:
运算符和表达式的概念;难度系数:
1;答案:
F)
3.( )在C程序中,%是只能用于整数运算的运算符
(知识点:
算术运算; 难度系数:
1; 答案:
T)
4.( )字符型数据不可以和整数数据一起进行算术运算。
(知识点:
算术运算; 难度系数:
1; 答案:
F)
5.( )若a,b为直角三角形的两个直角边,在C语言中可以用表达式ab/2计算其面积。
(知识点:
算术运算; 难度系数:
1; 答案:
F)
6.( )C表达式5%3的值为2。
(知识点:
算术运算; 难度系数:
1; 答案:
T)
7.( )设x、t均为int型变量,则执行语句"x=10;t=x&&x>10;"后,t的值为0
(知识点:
关系和逻辑运算;难度系数:
1;答案:
T)
8.( )在C语言中,逻辑“真”等价于不等于0的数
(知识点:
关系和逻辑运算; 难度系数:
1;答案:
T)
9.( )在C程序中,用整数0表示逻辑值“假”,用整数1表示逻辑值“真”
(知识点:
关系和逻辑运算; 难度系数:
1; 答案:
T)
10.( )在C语言的关系和逻辑运算中,凡是不等于0的值都等价于逻辑值“真”
(知识点:
关系和逻辑运算; 难度系数:
1; 答案:
T)
11.( )在C语言的关系和逻辑运算中,凡是等于0的值都等价于逻辑值“假”
(知识点:
关系和逻辑运算; 难度系数:
1; 答案:
T)
12.( )C表达式!
(x>0||y>0)等价于!
(x>0)&&!
(y>0)。
(知识点:
关系和逻辑运算; 难度系数:
3; 答案:
T)
13.( )判断x等于y时为“真”的C表达式为x=y。
(知识点:
关系和逻辑运算; 难度系数:
1; 答案:
F)
14.( )判断变量x的值是否在闭区间[10,50]的C表达式为10(知识点:
关系和逻辑运算;难度系数:
1;答案:
F)
15.( )C语言中的条件表达式与关系和逻辑表达式一样,只有“真”或“假”两个值。
(知识点:
条件表达式; 难度系数:
1; 答案:
F)
16.( )C语言的条件表达式z=x>y?
x:
y与C语句if(x>y)z=x;elsez=y;的功能相同。
(知识点:
条件表达式; 难度系数:
1; 答案:
T)
17.( )C语句printf("%d\n",x=0);的输出结果为0,因为x的值与0不相等。
(知识点:
赋值运算; 难度系数:
1; 答案:
F)
18.()赋值运算符的左端必须是一个可以存放数据的变
量。
(知识点:
赋值运算; 难度系数:
1; 答案:
T)
19.( )表达式x=x+1是错误的,因为x不可能等于x+1。
(知识点:
赋值运算; 难度系数:
1; 答案:
F)
20.( )若a和b类型相同,在计算了赋值运算a=b后b中的值将放入a中,而b中的值不变
(知识点:
赋值运算; 难度系数:
1; 答案:
T)
21.( )表达式j=-i++和j=-(i++)不相等,因为-和++的优先级是相同的。
(知识点:
自增与自减; 难度系数:
1; 答案:
F)
22.( )程序段:
i=8,j=10;printf("%d,%d,%d,%d\n",i,j,++i,j++);其结果9,10,9,10.
(知识点:
自增与自减; 难度系数:
1; 答案:
T)
23.( )自增运算符“++”的功能是将一变量的值在原有的基础上增加一个1,所以x=(y++)和x=(++y)是等价的。
(知识点:
自增与自减; 难度系数:
1; 答案:
F)
24.( )自增运算符“++”的功能是将变量的值在原有的基础上增加一个1,所以x++和++x是等价的。
(知识点:
自增与自减; 难度系数:
1; 答案:
T)
25.( )表达式m=(a=4,4*5)和m=a=4,4*5的值是相等的。
(知识点:
逗号表达式; 难度系数:
2; 答案:
T)
26.( )运行表达式m=(a=4,4*5)和n=a=4,4*5之后,变量m和n的值是相等的。
(知识点:
逗号表达式; 难度系数:
1; 答案:
F)
27.( )C表达式j=-i++和j=-(i++)不等价,因为-和++的优先级是相同的。
(知识点:
运算符的优先级; 难度系数:
1;答案:
F)
28.( )在所有的关系运算符(>=、>、==、!
=、<=、<)中,优先级都是相同的。
(知识点:
运算符的优先级;难度系数:
1;答案:
F)
29.( )C表达式a>b等价于!
a
(知识点:
运算符的优先级; 难度系数:
1;答案:
F)
30.( )运算符的优先级是指多个运算符在同一表达式中时,其运算的先后顺序。
(知识点:
运算符的优先级 难度系数:
1;答案:
T)
31.( )在C表达式中,所有的单精度实数都是先转换成双精度的之后再进行运算。
(知识点:
多类型混合运算;难度系数:
1; 答案:
T)
32.( )在C语言中,所有基本类型的数据,如:
char、short、int、long、float、double等都可以放在同一个表达式中进行运算。
(知识点:
多类型混合运算;难度系数:
1;答案:
T)
33.( )语句m=(a=4,4*5)和m=a=4,4*5是等价的
(知识点:
逗号表达式; 难度系数:
2; 答案:
F)
34.( )C语言中强制类型转换不会改变