习题三(运算与表达式)

合集下载

运算符与表达式练习题附答案

运算符与表达式练习题附答案

1. 以下运算符中优先级最高的是()。

A.&&B.+ C.!= D.?:2.能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是()。

A.a>=10 or a<=0B.a>=10| a<=0C.a>=10 && a<=0D.a>=10||a<=03. C语言中运算对象必需是整型的运算符是()。

(A)+ (B)/ (C)% (D)*4. 已知int i;float f;正确的表达式是()。

A)(int f)%i B) int(f)%iC) int(f % i) D) (int)f % i5. 下列程序的输出结果是()。

void main( ){ int a=7,b=5;printf("%d\n",b=b%a);}(A)0 (B)1 (C)5 (D)不确定值6. 若有定义:int a=8,b=5,c;,执行语句c=a/b+0.4;后,c的值为()。

(A)1.4 (B)1 (C)2.0 (D)27. 已知x=4.5,y=2.5,求表达式(x+y)/2+(int)y%(int)x的值()。

A) 3 B) 5 C)3.5 D) 5.58. 已知各变量的类型如下int i=8,k,a,b;unsigned long w=5;double x=1.42,y=5.2;则以下符合C语言语法的表达式是()。

(A)a+=a-=(b=4)*(a=3)(B)a=a*3+2(C)x%(-3)(D)y=float(i)9. 已知int a,b;执行语句a=(b=3*2,b*4),a+6;后变量a的值为()。

A) 6 B) 12 C)24 D)3010. 若有以下程序main(){int k=2,i=2,m;m=(k+=i*=k);printf("%d,%d\n",m,i); }执行后的输出结果是()。

(A)8,6 (B)8,3 (C)6,4 (D)7,411. 设 int i,j=5;执行语句i=(++j)+(++j);后i的值是()。

第6周C程序设计作业

第6周C程序设计作业

第三章练习题之运算符和表达式一、选择题:1、以下运算符中,优先级最高的运算符是()A. =B. !=C. *(乘号)D. ()2、若有以下定义,则能使值为3的表达式是()int k=7, x=12;A. x%=(k%=5)B. x%=(k-k%5)C. x%=k-k%5D. (x%=k)-(k%=5)3、设在tc2.0中有整型变量x,y,z均为3,表达式(x++)+(y++)+(z++)的值是 ( )A. 6B. 7C. 8D. 94、有以下程序运行后的输出结果是:()main(){ char a='A',b;print("%c,",++a);printf("%c\n",b=a++);}A. B,BB. B,CC. A,BD. A,C5、有以下程序运行后的输出结果是:()main(){ char a='a';printf ("%c,",++a);printf("%c\n",a++);}A)b,b B)b,c C)a,b D)a,c6、设a=6,b=4,则表达式b*=a+3的值为:()A)3 B)18 C)27 D)367、有如下程序段,其输出结果是: ( )int a=3;float b=15.6,f=1.5;printf(“%d”,a+(int)b/2+(int)f%3);A)10 B)11 C)12 D)138、以下程序的输出结果是:()main( ){int a=3 ;printf ( "%d %d\n " , a , a++) ; }A. 4 3B. 4 4C. 5 3D. 5 49、以下程序的输出结果是()。

main( ){int a=10;printf ( "%d %d\n " , a , a++) ; }(A)11 10 (B)11 11 (C)12 20 (D)12 1110、若有定义:int a=8,b=5,c;执行语句c=a / b+0.4 ; 后c的值为()。

数据类型、运算符与表达式练习题一

数据类型、运算符与表达式练习题一

学校_____________ 专业班级 学号 姓名装订线 密封线内不得答题 装订线 密封线内不得答题 装订线安居职业中学高2012年信息类专业试卷 第 1 页 共 2页页数据类型、运算符与表达式练习题一一、选择题1.设有如下变量声明:Dim TestDate As Date 为变量TestDate 正确赋值的表达方式是________。

A) TestDate = #1/1/2002#B) TestDate = #”1/1/2002”# C) TestDate = date(“1/1/2002”)D) TestDate = Format(“m/d/yy”,”1/1/2002”)2.下列符号中不能作为VB 中变量名的是________。

A) ABCD B) E0065700C) 123TWDFF D) zxy3.如果将布尔常量值True 赋值给一个整型变量,则整型变量的值为________。

A) 0 B) –1 C) True D) False4.下列符号常量的声明中,________是不合法的。

A) Const a As Single = 1.1B) Const a As Integer = “12”C) Const a As Double = sin(1)D) Const a = “OK”5.四个字符是”E”,”y”,”B”,”8”的ASCII 码值最大的是 ________。

A) ”E”B) ”y”C) ”B”D) ”8”6.下列________是字符型常量。

A) ”I am a student”B) ’江苏南京’C) #02/25/1999# D) 123# 7.下列________是日期型常量。

A) ”I am a student” B) ’江苏南京’ C) #02/25/1999# D) 123# 8.下列________是双精度型变量。

A) AAA% B) BBB$ C) CCC!D) DDD#9.可以同时删除字符串前导和尾部空白的函数是________。

C语言第三章数据类型和运算符及表达式复习题

C语言第三章数据类型和运算符及表达式复习题

数据类型、运算符和表达式复习题一.选择题1. 以下不合法的用户标识符是:()a) f2_G3 b) If c) 4d d) _82. 以下选项中合法的用户标识符是:()a) long b) _2Test c) 3Dmax d) A.dat3. 以下可用作用户标识符的是:()a) 12_a b) signed c) t-o d) _if4. 以下不是关键字的标识符是:()a) continue b) char c) If d) default5. C语言提供的合法的关键字是:()a) swicth b) cher c) Case d) void6. 以下选项中不合法的int整型常数是()a) 32768 b) -56 c) 03 d) 0xAF7. 以下合法的长整型常量是()a) 2L b) 49627 c) d) 213&8. 以下正确的实型常量是()a) 1.2E b) . c) 1.2e0.6 d) 89. 以下选项中合法的实型常数是()a) 5E2.0 b) E-3 c) .2E0 d) 1.3E10. 以下合法的八进制数是()a) 0135 b) 068 c) 013.54 d) o711. 以下合法的十六进制数是()a) 0x b) 0x4de c) 0x1h d) ox7712. 以下选项中非法的数值常量是()a) 019 b) 0L c) 0xff d) 1e113. 若变量已正确定义,以下合法的赋值表达式是()a) a=1/b=2 b) ++(a+b)c) a=a/(b=5) d) y=int(a)+b14. 若变量已正确定义,以下非法的表达式是()a) a/=b+c b) a%(4.0)c) a=1/2*(x=y=20,x*3) d) a=b=c15. 设x为int类型,其值为11,则表达式(x++*1/3)的值是:a) 3 b) 4 c) 11 d) 1216.设a,b均为double型,且a=5.5;b=2.5;则表达式(int)a+b/b的值是()a) 6. b) 6 c) 5. d) 6.17.若a为int型,且其值为3,则执行完表达式:a+=a-=a*a后,a的值是()a) -3 b) 9 c) -12 d) 618.设k和x均为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)19. 若a,b,c 均被定义成整型并已赋大于1的值,能正确表示代数式cb a ⋅⋅1的C 语言表达式是( )a) 1/(float)a*b*c b) 1/(a*b*c)c) 1.0/a/b/c d) 1/a/b/(float)c 20. 以下变量x,y,z 均为double 型且已正确赋值,不能正确表示代数式zy x ⨯的C 语言表达式是( )a) x/y*z b) x*(1/(y*z))c) x/y*1/z d) x/y/z 21. 不能正确表示代数式d c ba ⋅⋅的C 语言表达式是( )a) a/(c*d)*b b) a*b/c/dc) a*b/c*d d) a*b/(c*d)22.若题中变量已正确定义并赋值,下面符合C 语法的表达式是( )a) a%=7.6 b) a++,a=7+b+cc) int(12.3)%4 d) a=c+d=a+723. 若t 已定义为double 型,则表达式:t=1,t++,t+5的值为( )a) 7 b) 7.0 c) 2.0 d) 1.024. 已有定义:int a,b; float x,y;,以下正确的赋值语句是:( )a) a=1,b=2, b) y=(x%2)/10; c) x*=y+8; d) a+b=x;25. 有以下程序:main(){ int y=1111;printf(“y=%6d\n ”,y);printf(“y=%+06d\n ”,y);}程序运行的结果是:( )a) y= 1111 b) y= 1111 c) y=1111 d) y= 1111y= y=+01111 y=+01111 y=111126. 有以下程序:main(){ int y=456;printf(“*y=%7o*\n ”,y);printf(“*y=%-7o*\n ”,y);printf(“*y=%07o*\n ”,y);}程序运行的结果是:( )a) *y= 710* b) *y= 456**y=710 * *y=456 **y=* *y=*c) *y=710* d) *y=456**y=-710* *y=-456**y=0710* *y=0456*27. 有以下程序:main(){ float y=3.667;printf(“*%f*\n”,y);printf(“*%7.2f*\n”,y);printf(“*%8.0f*\n”,y);}程序运行的结果是:()a) *3.* b) *3.** 3.67* *3.667 ** 4* *4.*c) *3.667* d) *3.**3.* *3.67**3.* *4.*28. 已有定义:double a,b;,若要求按输入方式(此处*代表一个空格)**1.0**2.0<回车> 分别给a,b输入1,2,则能正确进行输入的语句是()a) scanf(“%f%f”,&a,&b);b) scanf(“%5.1lf%5.1lf”,&a,&b);c) scanf(“%lf%lf”,&a,&b);d) scanf(“%5e%5e”,&a,&b);29. 以下合法的定义语句是()a) short _auto_=100-1;b) double b=1+5e2.5;c) long do=1l;d) float 2_and=1e-3;30. 以下选项中不是C语句的是()a) ++t b) ; c) k=i=j; d) {a/=b=1;b=a%2;}31. 有定义语句:int a=5,b;,不能给b赋2的赋值语句是()a) b=a/2; b) b=b+2; c) b=2%a; d) b=5;b=2;32. 设x和y均为int型变量,语句组x+=y;y=x-y;x-=y;的功能是()a) 把x和y从小到大排列b) 把x和y从大到小排列c) 无确定结果d) 交换x和y中的值33. 有定义语句:long int a; int k;,能给a赋40000的正确语句是()a) a=20000+20000; b) a=4000*10;c) k=400;a=k*100; d) a=4000;a=a*10;34. 若有定义:int a=8,b=5,c;,执行语句:c=a/b+0.4;后,c的值是()a) 1.4 b) 1 c) 2.0 d) 235. 有以下程序:main(){ int k=2,i=2,m;m=(k+=i*=k++);printf(“y=%d,%d\n”,m,i);}程序运行的结果是:()a) 8,6 b) 8,3 c) 6,4 d) 7,436. 有以下程序:main(){ int y=3,x=3,z=1;printf(“%d %d\n”,(++x,y++),z+2);}程序运行的结果是:()a) 3 4 b) 4 2c) 4 3 d) 3 337. 有以下程序:main(){ int i; long l ; float f ; double d ;i=f=l=d=20/3;printf(“%d %ld %3.1f %3.1f\n”,i,l,f,d);}程序运行的结果是:()a) 6 6 6.0 6.0 b) 6 6 6.7 6.7c) 6 6 6.0 6.7 d) 6 6 6.7 6.038. 有以下程序:main(){ unsigned a=32768; int b ;b=a ;printf(“b=%d\n”,b);}程序运行的结果是:()a) b=32768 b) b=32767 c) b=-32768 d) b=-139.有以下语句printf(“%d,%d,%u\n”,016,16,-16);其输出结果是()a) 16,16,65520 b) 14,16,65520c) 16,16,-16 d) 14,16,-1640.若有定义语句:int b=0x17;printf(“%d”,b++);,其正确的输出结果是()a) 23 b) 24 c) 25 d) 2241.有以下程序:main(){ int x=0xffff;printf(“%d\n”,x--);}程序运行的结果是:()a) 32767 b) FFFEc) -1 d) -32768二.填空题1.已有定义:float f=13.8;,则表达式:(int)f%3的值是______.2. 已有定义:int x=3;, 则表达式:x=x+1.78的值是______.3. 已有定义:double x=3.5; 则表达式:x=(int)x+1的值是_____.4. 已有定义:int x=10,y=3,z;, 则表达式:z=(x%y,x/y) 的值是_______.5. 设a,b,c为整型数,且a的值为2,b的值为3, c的值为4,表达式:a*=16+(b++)-(++c)的值为______.6. 已有定义:int x=0,y=0;,则计算表达式:(x+=2,y=x+3/2,y+5)后,表达式的值是___,变量x的值是___,变量y的值是____.7. 已有定义:int x=110,y=017;,则计算表达式:(x++,++y)后,按十进制表示,变量x的值是_____,变量y的值是_______。

语言程序设计习题答案

语言程序设计习题答案

C 语言程序设计习题答案习题一 C 语言程序设计概述一、名词解释(1)程序P1 (2)程序设计P1 (3)机器语言P1 (4)汇编程序P2(5)高级语言P2 (6)编译程序P3 (7)解释程序P3 (8)算法P4(9)结构化的程序设计P9二、简述题1. 设计程序时应遵循哪些基本原则P4答:正确性、可靠性、简明性、有效性、可维护性、可移植性。

2. 算法的要素是什么算法具有哪些特点答:算法的要素是:操作与控制结构;算法的特点有:有穷性、确定性、有效性、有零个或多个输入、有一个或多个输出。

3. 算法的表示形式有哪几种答:算法的表示形式有:自然语言、传统流程图、伪代码、结构化的流程图(N_S 流程图,盒图)。

4. 有哪三种基本结构答:三种基本结构是:顺序结构、选择结构和循环结构。

5. 传统流程图与N-S 流程图最大的区别是什么答:N-S 流程图去掉了在传统流程图中常用的流程线,使得程序的结构显得更加清晰、简单。

三、用传统流程图、N-S 图分别表示求解以下问题的算法。

1. 有3个数a ,b ,c ,要求按由大到小的顺序把它们输出。

2. 依次将10个数输入,求出其中最大的数 和最小的数并输出。

3. 求1+2+3+…+100的值。

4. 求1×2×3×…×10的值。

5. 求下列分段函数的值。

6. 求100~200之间的所有素数。

7. 求一元二次方程ax 2+bx+c=0的根。

分别考虑d=b 2-4ac 大于0、等于0和小于0三种情况。

四、注释下面C 程序的各个组成部分。

main() /*主函数 */{ /*程序开始 */int a,k,m; /*定义三个用来存放整数的变量 */a=10; /*将整数10赋值给变量a */k=2; /*将整数2赋值给变量k */m=1; /*将整数1赋值给变量1 */a=(k+m)*k/(k-m); /*先求出算术表达式的值,并将其赋值给变量a */printf("%d\n",a); /*在屏幕上打印出变量a 的值 */} /*程序结束 */习题二 数据类型、运算符与表达式一、选择题1~10:BCDCB DDBCA11~20: ADDAA DBADC21~28: DABAD CDDY= 3X (X<1) 4X-1 (X=1) 5(X-1)+6 (1<X<5) 6-3X (X ≥5) 输入一个数给x X<=1 Yes no X<1 x<5 Yes no yes no Y=3x y=4x-1 y=5x+1 y=6-3x 输出s 的值 i =100 当i<=200时 n=2; flag=1; 当n< i 时i 能否被n 整除yes no flag=0 n = n+1 flag=1yes no输出i 的值i = i+1二、填空题1.字母L 或字母l2.字符或%c 、整数或%d3.在程序运行过程中,其值可以在一定的范围内变化的量。

习题三(运算与表达式)

习题三(运算与表达式)

.习题三一、选择题1.若有代数式bc ae 3,则不正确的C 语言表达式是( C )。

A. a/b/c*e*3B. 3*a*e/b/c D. a*e/c/b*32.在C D )。

A. /B. =C. ++ 3.若有定义语句:int a=7;float x=2.5,y=4.7; 的值( A )。

A.2.500000B. 2.750000C.3.500000D.0.0000004.若有定义int x=5,y=2,则表达式5/2的结果为( B )。

A. 2.5B. 2C. 2.0D. 35.判断char 型变量ch 是否为大写字母的正确表达式是( C )。

A. …A ‟<=ch<=‟Z ‟B. (ch>=‟A ‟)&(ch<=‟Z ‟)C. (ch>=‟A ‟)&&(ch<=‟Z ‟)D. (ch>=‟A ‟)and(ch<=‟Z ‟)6.为表示关系a ≥b ≥c,则正确的C 语言表达式为( C )。

A. a>=b>=cB. (a>=b)&(b>=c)C. (a>=b)&&(b>=c)D. (a>=b)||(b>=c)7.逻辑运算符两侧运算对象的数据类型( D )。

A.只能是0或1B.只能是0或非0正数C.只能是整型或字符型D.可以是任何数据类型 8.下列运算符中,优先级最高的是( B )。

A. <B. +C. &&D. ==9.设x 、y 、z 是int 型变量,且有x=3,y=4,z=5,则下面表达式中值为0的是( D )。

A. …x ‟&&‟y ‟B. x<=yC. x||y+z&&y-zD. !((x<y)&&!z||1) 10.已知x=43,ch=‟A ‟,y=0;则表达式(x>=y&&ch<‟B ‟&&!y )的值为( B )。

习题三(运算与表达式)

习题三(运算与表达式)

习题三一、选择题1.若有代数式bcae3,则不正确的C 语言表达式是( 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 2.在C 语言中,要求运算数必须是整型的运算符是( D )。

A. /B. =C. ++D. %3.若有定义语句:int a=7;float x=2.5,y=4.7; 则表达式x+a%3*(int)(x+y)%2/4的值( A )。

A.2.500000 B. 2.750000 C.3.500000 D.0.000000 4.若有定义int x=5,y=2,则表达式5/2的结果为(B )。

A. 2.5 B. 2 C. 2.0 D. 3 5.判断char 型变量ch 是否为大写字母的正确表达式是( C )。

A. …A ‟<=ch<=‟Z ‟ B. (ch>=‟A ‟)&(ch<=‟Z ‟) C. (ch>=‟A ‟)&&(ch<=‟Z ‟) D. (ch>=‟A ‟)and(ch<=‟Z ‟) 6.为表示关系a ≥b ≥c,则正确的C 语言表达式为( C )。

A. a>=b>=c B. (a>=b)&(b>=c) C. (a>=b)&&(b>=c) D. (a>=b)||(b>=c) 7.逻辑运算符两侧运算对象的数据类型(D )。

A.只能是0或1 B.只能是0或非0正数 C.只能是整型或字符型 D.可以是任何数据类型 8.下列运算符中,优先级最高的是( B )。

A. <B. +C. &&D. ==9.设x 、y 、z 是int 型变量,且有x=3,y=4,z=5,则下面表达式中值为0的是( D )。

A. …x ‟&&‟y ‟ B. x<=yC. x||y+z&&y-zD. !((x<y)&&!z||1)10.已知x=43,ch=‟A ‟,y=0;则表达式(x>=y&&ch<‟B ‟&&!y )的值为( B )。

习题3

习题3

第三章数据类型、运算符与表达式3.1 选择题【题3.1】在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为。

A)char<int<long int<=float<doubleB)char=int<long int<=float<doubleC)char<int<long int=float=doubleD)char=int=long int<=float<double【题3.2】若x、i、j和k都是int型变量,则执行下面表达式后x的值为。

x=(i=4,j=16,k=32)A)4 B)16 C)32 D)52【题3.3】假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是。

A)7 B)8 C)6 D)2【题3.4】下列四组选项中,均不是C语言关键字的选项是。

A)define IF typeB)getc char printfC)include scanf caseD)while go pow【题3.5】下列四个选项中,均是C语言关键字的选项是。

A)auto enum includeB)switch typedef continueC)signed union scanfD)if struct type【题3.6】下面四个选项中,均不合法的用户标识符的选项是。

A) A P_0 doB)float la0 _AC)b-a goto intD)_123 temp INT【题3.7】C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符。

A)必须为字母B)必须为下划线C)必须为字母或下划线D)可以是字母、数字和下划线中任一种字符【题3.8】下面四个选项中,均是合法整型常量的选项是。

A)160 -0xffff 011B)-0xcdf 01a 0xeC)-01 986,012 0668D)-0x48a 2e5 0x【题3.9】下面四个选项中,均是不合法的整型常量的选项是。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

习题三一、选择题1.若有代数式bcae3,则不正确的C 语言表达式是( 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 2.在C 语言中,要求运算数必须是整型的运算符是( D )。

A. /B. =C. ++D. %3.若有定义语句:int a=7;float x=2.5,y=4.7; 则表达式x+a%3*(int)(x+y)%2/4的值( A )。

A.2. B. 2. C.3. D.0. 4.若有定义int x=5,y=2,则表达式5/2的结果为(B )。

A. 2.5 B. 2 C. 2.0 D. 3 5.判断char 型变量ch 是否为大写字母的正确表达式是( C )。

A. ‘A ’<=ch<=’Z ’ B. (ch>=’A ’)&(ch<=’Z ’) C. (ch>=’A ’)&&(ch<=’Z ’) D. (ch>=’A ’)and(ch<=’Z ’) 6.为表示关系a ≥b ≥c,则正确的C 语言表达式为( C )。

A. a>=b>=c B. (a>=b)&(b>=c) C. (a>=b)&&(b>=c) D. (a>=b)||(b>=c) 7.逻辑运算符两侧运算对象的数据类型(D )。

A.只能是0或1 B.只能是0或非0正数 C.只能是整型或字符型 D.可以是任何数据类型 8.下列运算符中,优先级最高的是( B )。

A. <B. +C. &&D. ==9.设x 、y 、z 是int 型变量,且有x=3,y=4,z=5,则下面表达式中值为0的是( D )。

A. ‘x ’&&’y ’ B. x<=yC. x||y+z&&y-zD. !((x<y)&&!z||1)10.已知x=43,ch=’A ’,y=0;则表达式(x>=y&&ch<’B ’&&!y )的值为( B )。

A. 0 B. 1 C. “假” D. true11.下列表达式中,不满足条件“当x 为奇数时值为真,当x 为偶数时值为假”的是( C )。

A. x%2==1 B. !(x%2==0) C. !(x%2) D. x%212.设有int a=1,b=2,c=3,d=4,m=2,n=2;则执行表达式(m=a>b )&&(n=c>d)后,n 的值为( C )。

A. 0 B. 1 C. 2 D. 3 13.判断char 型变量c 是否为0到9的数字的正确表达式为( C )。

A. ‘0’<=c<=’9’B. 0<=c<=9C. c>=’0’&&c<=’9’D.c>=0&&c<=9 14.设有int x=3,y=4,z=5,则执行表达式!(x+y )+z-1&&y+z/2的结果是( D )。

A. 6 B. 0 C. 2 D. 115.以下程序的运行结果是(B )。

#include <stdio.h>void main( ){int a,b,d=241;a=d/100%9;b=(-1)&&(-1);printf(“%d,%d\n”,a,b);}A. 6,1B. 2,1C. 6,0D. 2,016.执行以下语句后x的值为,y的值为( C )。

int x=5,y=6,t=1,a=2,b=3,z=4;(x=t>a)&&(y=b>z)A. 5,6B. 5,0C. 0,6D. 0,017.以下表达式中,与表达式!a等价的是(D )。

A. a==0B. a==1C. !a==0D. !a==118.以下符合C语言语法的赋值表达式是( D )。

A. a=10+n+m=a+3B. a=10+m,b=a+5C. b=b*8=2D. a+=a-=(m=4)*(n=3)19.若有int a=7,b=12,则以下表达式中,值为3的是( D )。

A. b%=(a%=5)B. b%=(a-a%5)C. b%=a-a%5D. (b%=a)-(a%=5)20.已知各变量的类型说明如下。

int a=2,b;double x=2.56;则以下不符合C语言语法的表达式是( A )。

A. x%(-3)B. a+=2C. a+=a-=(b=4)D. x/=(b=3) 21.设以下变量均为int类型,则值不等于7的表达式是(C )。

A. (x=y=6,x+y,x+1)B. (x=y=6,x+y,y+1)C. (x=6,x+1,y=6,x+y)D. (y=6,y+1,x=y,x+1)22.若x,i,j,k都是int型变量,则执行表达式x=(i=4,j=16,k=32)后,x的值为(C )。

A. 4B. 16C. 32D. 5223.执行下面程序段后,输出结果为( C )。

int x=13,y=5;printf(“%d”,x%=(y/2));A. 3B. 2C. 1D. 024.设x,y均为float型变量,则以下不合法的赋值语句是( B )。

A. x=0.0B. y=(x%2)/10;C. x*=y+8;D. x=y=0; 25.设int a=10,则执行语句a+=a*=a/5+10;后,a的值是(A )。

A.240B.120C.30D.6026.设有定义语句int x=2;则以下表达式中,值不为6的是(D )。

A. x*=x+1B. x=2,3*xC. x*=(1+x)D. 2*x,x+=227.已知变量x、y、z都为int型,则执行z=2+(y=1,y+=1,x=y,x+8)后,x和z的值分别为(A )。

A.x=2,z=12B. x=2,z=10C. x=10,z=12D. x=10,z=1028.若w=1,x=2,y=3,z=4,则条件表达式w<x?w:y<z?y:z的值是( D )。

A. 4B. 3C. 2D. 129.若w、x、y、z、m均为int型变量,则执行下面语句后,m的值为(A )。

w=1;x=2,y=3;z=4m=(w<x)?w:x;m=(m<y)?m:ym=(m<z)?m:z;A. 1B. 2C. 3D. 430.若运行时给变量x输入12,则以下程序的运行结果是( A )。

#include<stdio.h>void main( ){int x,y;scanf(“%d”,&x);y=x>12?x+10:x-12;printf(“%d\n”,y);}A. 0B. 22C. 12D. 1031.若已知num、sum均为int型变量,且num=sum=7;则计算表达式sum=num++,sum++后,sum的值为( B )。

A. 7B. 8C. 9D. 1032.若有int x=11,则表达式(x++*1/3)的结果为(B )。

A. 5B. 3C. 4D. 633.若有定义语句:int x=3;则以下表达式中,值为5的是(A )。

A. ++x,x+1B. x+=2,--xC. x+=2,x+1D. x++,x++ 34.若已知m,n,x,y为int型变量,则执行以下语句后,变量y的值为(D )。

m=10;n=5;x=(--m==n++)?--m:++n;y=n;A. 5B. 10C. 6D. 735.执行以下程序段后,变量a,b,c的值分别为(B )。

int x=10,y=9;int a,b,c;a=(--x==y++)?--x:++y;b=x++;c=y;A. a=9,b=9,c=9B. a=8,b=8,c=10C. a=9,b=10,c=9D. a=1,b=11,c=10 36.以下程序的输出结果是(C )。

#include<stdio.h>void main( ){int w=3,z=7,x=10;printf(“%d\n”,x>10?x+100:x-10);printf(“%d\n”, w++||z++);printf(“%d\n”,!w>z);printf(“%d\n”,w&&z);}A. 0B. 1C. 0D. 01 1 1 11 1 0 01 1 1 037.以下关于运算符优先顺序的描述中正确的是( C )。

A. 关系运算符<算术运算符<赋值运算符<逻辑与运算符B. 逻辑与运算符<关系运算符<算术运算符<赋值运算符C. 赋值运算符<逻辑与运算符<关系运算符<算术运算符D. 算术运算符<关系运算符<赋值运算符<逻辑与运算符38.下列运算符中,优先级最高的是(D )。

A. <B. %C. &&D. ++39.设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是(C )。

A. ‘x’&&’y’B. x<=y<=zC. y+z&&y-z&&(x+1)%2D. !x||x<y&&140.以下不能将变量c中的大写字母转换为对应小写字母的语句是(D )。

A. c+=32B. c=c-‘A’+’a’C. c=c-65+97D. c=c-32二、填空题1.若s是int型变量,且有s=6,则表达式s%2+(s+1)%2的值为 1 。

2.若a是int型变量,则计算表达式a=25/3%3后,a的值为 2 。

3. 若有定义:int b=7;float a=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为5.5 。

4.若有定义:int a=2,b=3;float x=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值为3.5 。

5.若有定义:int x=3,y=2; float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b的值为1 。

6.当a=3,b=2,c=1时,表达式f=a>b>c的值为0 。

7.当a=5,b=4,c=2时,表达式a>b&&!c的值为0 。

8.C语言提供的三种逻辑运算符是&& 、‖、! 。

9.若a=2,b=4,则表达式!(x=a)||(y=b)&&0的值为0 。

相关文档
最新文档