内容正文:
专题二:C语言的运算
一、选择题
1.在C语言中,要求运算数必须是整型的运算符是( )
A. <
B. /
C. %
D. !
2.若有定义语句:int m=6;则表达式 m-=m+m 的值为( )
A. -6
B. 0
C. 6
D.12
3.若a是int型变量,表达式((a=3*5,a*2),a++,a+6)的值是( )
A. 22
B. 37
C. 21
D. 31
4.下列运算符中级别最高的( )
A. +
B. -
C. *
D. ++
5.已知int a=5,b=5,c=5;执行语句a%=b+c;后,x的值是( )
A. 0
B. 1
C. 表达式错误
D. 5
6.以下程序段的运行结果是( )
char a='M’,b='m';
printf("%c
",(a++,++b));
A. M
B. n
C. m
D. N
7.已知 int a,m;,执行语句 a=(m=6,m* 5),m+6;后,变量i的值是( )
A. 6
B. 30
C. 12
D. 36
8.下列关于自增运算符和自减运算符的叙述中正确的是( )
A.它们的运算对象可以是 char 型变量.int 型变量和 float 型变量
B.它们的运算对象可以是 char 型变量和 int 型变量,但不能是 float 型变量
C.它们的运算对象可以是 int 型变量,但不能是 double 型变量和 float 型变量
D.它们的运算对象可以是任意变量和常量
9.表达式9/2的值是( )
A.4.5
B.4
C.5
D.3
10.表达式(b=5,++b,b++)的值为( )
A. 4
B. 5
C.7
D.6
11.以下合法的 C语言赋值语句是( )
A. a=b=4
B. k=a+b
C. a=120,b=240
D. - -i;
12.表达式 3.6-5/2+1.2+5%2 的值是( )
A. 3.8
B. 2.8
C. 4.8
D. 4.3
13.与 a=m++表达相同意思的表达式是( )
A. m=m+1,a=m
B. a+=m+1
C. a=++m
D. a=m,m=m+1
14.设有 int x=11;则表达式(x++ * 1/3)的值是( )
A. 4
B. 5
C. 11
D. 3
15.若变量均已正确定义并赋值,以下合法的 C 语言赋值语句是( )
A. x=n%2.5;
B. x+n=1;
C. x=5=4+1;
D. x=y=5
16.若变量已正确定义,现要将 a 和b 中的数据进行交换,下面不正确的是( )
A. a=a+b;b=a-b;a=a-b;
B. t=a;a=b;b=t;
C. a=t;t=b;b=a;
D. t=b;b=a;a=t;
17.表达式 a+=a-=a=9 的值是( )
A. -9
B. 0
C. 18
D. 9
18.以下变量 x,y,z 均为 double 类型且已正确赋值,不能正确表示数学式子 x/(yz)的 C语言表达式是( )
A.x/y*1/z
B.x*(1/(y*z))
C.x/y*z
D.x/y/z
19.设变量定义如下:
int i=8,k,a,b;
double x=1.42,y=5.2;则以下符合 C语言语法的表达式是( )
A. a=a*3=2
B. a+=a-=(b=4)*(a=3)
C. y=float(i)
D. x%(-3)
20.变量定义如下:int k=7,x=12;则以下能使值为3的表达式是( )
A. x%=(k%-5)
B. x%(k-k%5)
C. (x%=k)-(k%=5)
D. x%=k-k%5
21.下列哪个表达式计算结果不为10( )
A. 5 + 5
B.2 * 5
C. 15 - 5
D. 20 / 2.0
22.设有定义:int k=0;以下选项的四个表达式中与其他三个表达式的值不相同的是( )
A. k++
B. k+=1
C. ++k
D. k+1
23.逗号表达式"(a=3 * 5,a * 6),a+15"的值是( )
A. 145
B. 30
C. 60
D. 20
24.若有下列程序段,其输出结果是( )
int a=0,b=0,c=0;
c=(a-=a-5),(a=b,b+3);
printf(“%d,%d,%d”,a,b,c);
A. 0,0-10
B. 0,0,5
C. -10,3,10
D. 3.3,10
25.给定以下变量的声明:int a = 5, b = 3, c = 2。下列哪个表达式计算结果为4( )
A.a + b / c
B.a - b * c
C.a % b + c
D.a * b - c
26.若有代数式 3ae/(bc),则不正确的 C语言表达式是( )
A. a/b/c*e*3
B. 3*a*e