第二章基本数据类型和运算因为题目略有删减,可能编号不连续,请见谅一、单项选择题1.下列数据中属于“字符串常量”的是(A )。
A. "a"B.{ABC} C.’abc\0’D.’a’4.字符串"ABC"在内存占用的字节数是( B )。
A.3 B.4C.6 D.85.字符串" \’ABCD\’ "内存占用的字节数是( C )。
A.4 B.6 C.7D.86.在C语言中,合法的长整型常数是( A )。
A.0L B.4962710 C.0.054838743 D.2.1869e107. 在C语言中,合法的短整型常数是( D )。
A.0L B.0821 C.40000 D.0x2a8.下列数据中不属于“字符常量”的是( C )。
A.‘\xff’B.‘\160’C.’070’D.0709.char型常量的内存中存放的是( A )。
A.ASCII代码值B.BCD代码值C.内码值D.十进制代码值11.常数的书写格式决定了常数的类型和值,03322是( B )。
A、16进制int类型常数B、8进制int类型常数C、10进制int类型常数D、10进制long int类型常数12.“e2”是( D ) 。
A、实型常数100B、值为100的整型常数C、非法标识符D、合法标识符13. 要为字符型变量a赋初值,下列语句中哪一个是正确的( A )。
A、char a=’3’;B、char a=”3”;C、char a=%;D、char a=*;14. 要为float类型变量x、y、z赋同一初值3.14,下列说明语句哪一个是正确的(C )。
A、float x,y,z=3.14;B、float x,y,z=3*3.14;C、float x=3.14,y=3.14,z=3.14;D、float x=y=z=3.14;15. 语句float pi=3.1415926535; 将( D )。
A、导致编译错误B、说明pi为初值3.1415926535的单精度实型常数C、导致运行时的溢出错误D、说明pi为初值3.141593的单精度实型常数16. 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为( B)。
A、算术运算、赋值运算、关系运算B、算术运算、关系运算、赋值运算C、关系运算、赋值运算、算术运算D、关系运算、算术运算、赋值运算17. 关系运算符中优先级最低的运算符是( C )。
A、“>=”和“<=”B、“>”和“<”C、“==”和“!=”D、“<=”和“<”18. 逻辑运算符中,运算优先级按从高到低依次为( D )。
A、&&,!,||B、||,&&,!C、&&,||,!D、!,&&,||19. 对C程序在作逻辑运算时判断操作数真、假的表述,下列哪一个是正确的( A )。
A、0为假非0为真B、只有1为真C、-1为假1为真D、0为真非0为假20. 表达式x&&1等效于( C )A. x==0B. x==1C. x!=0D. x!=122. 表达式!x||a==b等效于( D )。
A、!((x||a)==b)B、!(x||y)==bC、!(x||(a==b))D、(!x)||(a==b)23. 设整型变量m,n,a,b,c,d均为0,执行(m=a= =b)||(n=c= =d)后,m,n的值是( C )。
A.0,0 B.0,1 C.1,0D.1,126. 设a为5,执行下列语句后,b的值不为2的是( C )。
A. b= a/2 B.b=6-(--a) C.b= a%2D.b= a>3?2:228. int b=0,x=1;执行语句if(x++) b=x+1;后,x,b的值依次为( A )。
A.2,3B.2,0 C.3,0 D.3,229. 设有语句int a=3;,则执行了语句a+=a-=a*a ;后,变量a的值是( D )。
A.3 B.0 C.9 D.-1230. 设有语句int a=3;,则执行了语句a+=a-=a*=a;后,变量a的值是( B )。
A.3 B.0C.9 D.-1232. 在以下一组运算符中,优先级最高的运算符是( C )。
A.<= B.= C.%D.&&33 . 在以下一组运算符中,优先级最低的运算符是( D )A. *B. !=C. +D. =35. 设整型变量i,j值均为3,执行了j=i++,j++,++i 后,i,j的值是( B )。
A.3,3 B.5,4C.4,5 D.6,636. 若已定义x和y为double类型,则表达式x=1,y=x+3/2 的值是( C )。
A.1 B.2 C.2.0D.2.538. 表达式1?(0?3:2 ) :(10?1:0)的值是( B )。
A.3 B.2C.1 D.039. 设a=1,b=2,c=3,d=4,则表达式:a<b? a : c<d? a : d的结果为( D )。
A.4 B.3 C.2 D.140. 设a为整型变量,不能正确表达数学关系:10<a<15的C语言表达式是( A )。
A.10<a<15 B.a= =11|| a= =12 || a= =13 || a= =14C.a>10 && a<15 D.!(a<=10) && !(a>=15)41. int a=0; if(a=1) a+=10; 结果的值是( B )。
A.0 B.11C.10 D.出错42. 下列表达式中符合C语言语法的赋值表达式是( C )。
A.a=7+b+c=a+7 B.a=7+b++=a+7 C.a=(7+b,b++,a+7)D.a=7+b,c=a+7 43.设f是实型变量,下列表达式中不是逗号表达式的是( D )。
A.f= 3.2, 1.0 B.f>0, f<10 C.f=2.0, f>0 D.f=(3.2, 1.0)--- 赋值表达式44. 下列表达式中,不正确的表达式是( B )。
A.a=1,b=1 B.y=int(x)C.a=b=5 D.i++47. 设有整型变量a=35,表达式(a&15)&&(a|15) 的值是( B )。
A.0 B.1C.15 D.3552. 设a是char型变量,其值字符为’1’,则把其值变成整数1的表达式是( C )。
A.(int)a B.int(a) C.a= a - 48D.a / (int)a53. 设a是int型变量,其值为3,则把其值变成字符’3’ 的表达式是( D )。
A.(char)a B.a=3 C.a= a - 48 D.a= a+4854. 设ch是char型变量,其值为’A’,则下面表达式的值是( B )。
ch=(ch>=’A’&& ch<=’Z’)? (ch+32) : chA.A B.a C.Z D.Z55. 设有整型变量i, j, k, i值为3,j值为6。
计算表达式k=i ^ j<<3; 后,k的值是( B )。
A.56 B.51C.40 D.2758. 下列格式符中,哪一个可以用于以8进制形式输出整数( C )。
A、%dB、%8dC、%oD、%ld59. 下列格式符中,哪一个可以用于以16进制形式输出整数( B )。
A、%16dB、%8xC、%d16D、%d60. a是int类型变量,c是字符变量。
下列输入语句中哪一个是错误的( B )。
A、scanf(”%d,%c”,&a,&c);B、scanf(”%d%c”,a,c);C、scanf(”%d%c”,&a,&c);D、scanf(”d=%d,c=%c”,&a,&c);61.字符变量ch=’A’,int类型变量k=25,语句printf(”%3d,%d3\n”,ch,k);输出( A )。
A、65,253B、65 253C、65,25D、A 2563.使用scanf(“x=%f,y=%f ”,&x,&y); 要使x, y均为1.25, 正确的输入是( C)。
A.1.25, 1.25 B.1.25 1.25 C.x=1.25, y=1.25D.x=1.25 y=1.25 64. 要使double x;long a;获得数据,正确的输入语句是( C )。
A.scanf(“%d, %f ”,&a,&x); B.scanf(“%f, %1d”,&x,&a);C. scanf(“%ld, %1f ”,&a,&x); D.scanf(“%1d, %1f”,a, x);67. 设有int i=010,j=10;则printf(“%d,%d\n”,++i, j--);的输出的是( B )。
A.11,10 B.9,10 C.010,9 D.10,968. 设a、b为字符型变量,执行scanf(“a=%c,b=%c”,&a, &b);后使a为’A’, b为’B’,从键盘上的正确输入是( D )。
A.‘A’’B’B.‘A’,’B’C.A=A,B=B D. a=A,b=B二、填充题1.无符号基本整型的数据类型符为unsigned,双精度实型数据类型符为double,字符型数据类型符为char。
7.设下列运算符:<<、+、++、&&、<=,其中优先级最高的是++,优先级最低的是&&。
10.设a=3,b=2,c=1,则a>b的值为1,a>b>c的值为0(a>b>c a>b为1 1>c 假为0 )。
11.若已知a=10,b=20,则表达式!a<b的是值为1(先求!a 为0 0<b 为真1 ) 。
12.设x和y均为int型变量,且x=1,y=2,则表达式1.0+x/y的值为1.0(x/y 为0 整除) 。
14. 设float x=2.5,y=4.7; int a=7;,表达式x+a%3*(int)(x+y)%2/4 的值为 2.5。
16.int x=17,y=5; 执行语句x%=x++/--y 后x的值为2。
17. ch是字符变量,判断ch是英文字母的逻辑表达式为ch>=’a’&&ch<=’z’||ch>=’A’&ch<=’Z’.19. 判断变量a、b的值均不为0的逻辑表达式为a!=0&&b!=0。