1、计算机测试计算机二级考试C语言课后模拟题二及答案【计算机测试】2013年计算机二级考试C语言课后模拟题二及答案一、单项选择题 1下面四个选项中,均不是c语言关键字的选项是( A )。 A) defineIFType B) getccharprintf C) includescanfcaseD) whilegopow 2C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符(C)。 A) 必须为字母B) 必须为下划线 C) 必须为字母或下划线D) 可以是字母、数字和下划线中任一种字符 3下列四个选项中,均是C语言关键字的选项是( B )。 A) auto enum includeB)
2、 switchtypedefcontinueC) signed union scanfD) ifstruct type 4下面四个选项中,均是不合法的用户标识符的选项是( C )。 A) AP_0 doB) floatla0_AC) b-agotointD) _123tempint 5以下有4组用户标识符,其中合法的一组是(C)。 A) For-sub CaseB) 4dDO Size C) f2_G3IFabc D) WORDvoiddefine6下列选项中,合法的C语言关键字是( D )。 A) VARB) cherC) integerD) default7下面四个选项中,均是合法整型常量
3、的选项是( A )。 A) 160 -0xffff011B) -0xcdf 01a0xeC) 01986012 0668D) -0x48a 0x2e5 0xe8下面四个选项中,均是正确的八进制数或十六进制数的选项是( C )。 A) -100x8f-011B) 0abc-017 0xcC) 010 -0x11 0xf1D) 0a12-0x123 -0xa 9设C语言中,一个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为( C )。 A) 0255B) 032767C) 065535D) 02147483647 10在C语言中,不正确的int类型的常数是( A )。
4、 A)32768B)0来源:C)037D)0xAF(11101111=128+64+32+8+4+2+1)11下面四个选项中,均是不合法的整型常量的选项是( D )。 A) -0f1-0xffff 0011B) -0xcdf01712456C) -018999 5e2 D) -0x48eg-06803f 12下面四个选项中,均是不合法的浮点数的选项是( B )。 A) 160.0.12 e3B) 1232e4.2 .e5 C) -.18123e40.0D) -e3.234 1e3 13下面四个选项中,均是合法的浮点数的选项是( B )。 A) 1e1 5e-9.403e2B) -.6012e-
5、4-8e5 C) 123e1.2e-.4+2e-1 D) -e3.8e-4 5.e-0 14下列变量定义中合法的是( A )。 A) short _a=1-.le-1;B) double b=1+5e2.5; C) long do=0xfdaL;D) float 2_and=1-e-3; 15 以下选项中合法的字符常量是( B )。 A) “B”B) 010C) 68D) D 16以下选项中,非法的字符常量是( C )。 A) tB) 17C) nD) xaa 17以下所列的C语言常量中,错误的是( B )。 A) 0xFFB) 1.2e0.5C) 2LD) 72 18在C语言中,char型数
6、据在内存中的存储形式是( D )。 A) 补码B) 反码C) 原码来源:D) ASCII码 19下面四个选项中,均是合法转义字符的选项是( A )。 A) n B) 017 ” C) 018 f xabD) 0 101 xlf 20下面四个选项中,均是不合法的转义字符的选项是( B )。 A) ” xfB) 1011 a C) 011 f D) abc 101 xlf21下面正确的字符常量是(C)。 A) “c”B) C) WD) 22下面四个选项中,均是正确的数值常量或字符常量的选项是( D )。 A) 0.00f8.9e &B) a3.9e-2.51e1 C) 3011 0xff000aD
7、) +001 0xabcd 2e250. 23下面不正确的字符串常量是(A) A) abcB) ”1212”C) ”0”D) ” ” 24在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为(A)。 A) charintlong int=floatdoubleB) char=intlong int=floatdoubleC) charintlong int=float=doubleD) char=int=long int=floatdouble 25若有说明语句:char c=72;则变量c( A )。 A) 包含1个字符B) 包含2个字符 C) 包含3个字符D) 说明
8、不合法,c的值不确定 26设变量a是整型,f是实型,i是双精度型,则表达式10+a+i*f值的数据类型为( C )。 A) intB) floatC) doubleD) 不确定 27表达式18/4*sqrt(4.0)/8值的数据类型为( C )。 A) intB) floatC) doubleD) 不确定 28设有说明:charw; intx; floaty; doublez; 则表达式w*x+z-y值的数据类型为( D )。 A) floatB) charC) intD) double 29以下选项中属于C语言的数据类型是( C )。 A) 复数型B) 逻辑型C) 双精度型D) 集合型 30
9、以下程序的输出结果是( A) main() char c=z;printf(“%c”,c-25);A) aB) ZC) z-25D) y31若有定义:inta=7; floatx=2.5,y=4.7; 则表达式x+a%3*(int)(x+y)%2/4的值是( A )。 A) 2.500000B) 2.750000C) 3.500000D) 0.000000 32若有代数式3ae/bc,则不正确的c语言表达式是( C )。 A) a/b/c*e*3B) 3*a*e/b/cC) 3*a*e/b*cD) a*e/c/b*333设有 intx=11; 则表达式 (x+ * 1/3) 的值是( A )。
10、 A) 3B) 4C) 11D) 12 34以下变量x.、y、z均为double类型且已正确赋值,不能正确表示数学式子x/yz的C语言表达式是( A )。 A) x/y*zB) x*(1/(y*z)C) x/y*1/zD) x/y/z 35C语言中运算对象必须是整型的运算符是( A )。 A) %=B) /C) =D) = 36下列程序的输出结果是( C )。 main() double d=3.2; int x,y;x=1.2; y=(x+3.8)/5.0;printf(%dn, d*y);A) 3B) 3.2C) 0D) 3.07 37若x,i,j和k都是int型变量,则计算下面表达式x=
11、(i=4, j=16, k=32) 后,x的值为( C )。 A) 4B) 16C) 32D) 52 38假设所有变量均为整型,则表达式(a=2, b=5, b+, a+B)的值是( B )。 A) 7B) 8C) 6D) 2 39假定x和y为double型,则表达式x=2, y=x+3/2的值是( D )。 A) 3.500000B) 3C) 2.000000D) 3.000000 40若以下变量均是整型,且num=sum=7;则计算表达式sum=num+, sum+, +num后sum的值为( B )。 A) 7B) 8C) 9D) 1041若有定义int k=7,x=12; ,则以下能使
12、值为3的表达式是( D )。 A) x%=(k%=5) B) x%=(k-k%5)C) x%=k-k%5D) (x%=k)-(k%=5) 42设以下变量均为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)43下列程序执行后的输出结果是( A )。 main()int x=f;printf(“%cn”,A+(x-a+1);A) GB) HC) ID) J44下列程序执行后的输出结果是( C )。 main() char x=0xFFFF; p
13、rintf(%d n,x-); A) 32767B) FFFEC) -1D) 32768 45以下程序的输出结果是( D )。 main() int a=3;printf(%dn,(a+=a-=a*a);A) -6B) 12C) 0D) 12 46若变量已正确定义并赋值,下面符合C语言语法的表达式是( B )。 A) a:=b+1B) a=b=c+2C) int 18.5%3D) a=a+7=c+b 47若有以下程序段,int c1=1, c2=2, c3;c3=1.0/c2*c1;则执行后,c3中的值是( A )。 A) 0B) 0.5C) 1D) 2 48有如下程序main( ) int
14、y=3, x=3, z=1;printf(“%d %dn”, (+x, y+), z+2);运行该程序的输出结果是( D )。 A) 3 4B) 4 2C) 4 3D) 3 3 49已知大写字母A的ASCII码为65,以下程序的运行结果为( A )。 #includemain( )char c1=A,c2=Y;printf(“%d,%dn”,c1,c2);A) 65,89B) A,YC) 65,88D) 65,9050以下程序的输出结果是( D )。 #includemain()int a=010,b=10;printf(“%d,%dn”,a+,-B);A) 10,10B) 8,10C) 10
15、,9D) 8,951以下程序的输出结果是( B )。 main()int a,b;a=100;b=200;printf(“%dn”,(a,B);A) 100B) 200C) 20000D) 100=20052执行语句 y=10;x=y+; 的结果是( C )。 A) x=10,y=10B) x=11,y=11C) x=10,y=11D) x=11,y=1053在表示C语言的整型变量时,表示“无符号长整型”的符号是( D )。 A) unsigned intB) unsigned short C) long intD) unsigned long 54在下列形式的常数中,C程序不允许出现的是(
16、B )。 A) .45B) 123C) 25.6e-2D) 4e355以下程序的输出结果是( C )。 main() float x=3.6;int i;i=(int)x;printf(“x=%f,i=%d”,x,i);A) x=3.600000,i=4B) x=3,i=3C) x=3.600000,i=3D) x=3.000000,i=3.60000056在C语言中,要求运算数必须是整型数据的运算符是( B )。 A) /B) %C) !D) 57执行下列语句的结果是( C )。 i=3;printf(“%d,”,+i);printf(“%d”,i+);A) 3,3B) 3,4C) 4,3D
17、) 4,458已知x=3, y=2,则表达式x*=y+8的值为( C )。 A) 3B) 2C) 30D) 1459执行语句int i=65536; printf(“%dn”,i); 的结果是( B )。 A) 65536B) 0C) 有语法错误,无输出结果D) 160在C语言中,不正确的int类型的常数是( A )。 A) 32768B) 0C) 037D) 0xAF61C语言提供的合法关键字是( D )。 A) swicthB) chan来源:C) CaseD) default 62表示“在使用x之前,先使x的值加1”的正确方式是( A )。 A) +xB) x+C) +xD) +x+63
18、设x的值为5,则表达式(+x)+(+x)+(+x)的值是( D )。 A) 24B) 20C) 15D) 21 64在C语言中,合法的字符常量是( B )。 A) 084 B) x43 (十六进制)C) ab D) “0” 65若已定义x和y为double类型,则表达式:x=1, y=x+3/2的值是( C )。 A) 1B) 2C) 2.0D) 2.666若t为double类型,表达式t=1, t+5, t+的值是( D )。 A) 1B) 6.0C) 2.0D) 1.0 67若有以下定义和语句,则输出结果是( B )。 char c1=b,c2=e;printf(“%d,%cn”,c2-c
19、1,c2-a+A);A) 2,MB) 3,E C) 2,ED) 输出项与对应的格式控制不一致,输出结果不确定 68设有如下的变量定义: int i=8,a,b;double x=1.42,y=5.2;则以下符合C语言语法的表达式是( A )。 A) a+=a-=(b=4)*(a=3)B) x%(-3)C) a=a*3=2D) y=float(i)69若有以下定义和语句: int u=010,v=0x10,w=10;printf(“%d,%d,%dn”,u,v,w);() 则输出结果是(A)。 A) 8,16,10B) 10,10,10C) 8,8,10D) 8,10,10二、填空题 1若x和a
20、均是int型变量,则计算表达式(1)后的x值为12,计算表达式(2)后的x值为 4 。 (1) x=(a=4, 6*2)(2) x=a=4, 6*2 2若a是int型变量,则表达式(a=4*5, a*2), a+6的值为 26。 3若b是int型变量,则表达式b=25/3%3的值为 2 。 4若s是int型变量,且s=6 则下面表达式s%2+(s+1)%2的值为 1。 5若a,b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,a值为6 ,b值为 4 ,c值为 2。 6若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n+后x的值为 10,n的值为6 。 7若有定
21、义:int b=7;float a=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为5.5。 8若有定义:int a=2,b=3;float x=3.5,y=2.5;则表达式(float)(a+B)/2+(int)x%(int)y的值为3.5 。 9若有定义:int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b的值为 1 。10若x和n均是整型变量,且x的初值为12,n的初值为5,则计算表达式x%=(n%=2)后x的值为0。 11以下程序的输出结果是 0 。 main() unsigned short a=65536; int b; printf(“%dn”,b=a);12请写出数学式a/bc的C语言表达式 a/(b*c) 。 13设a、b、c为整型数,且a=2、b=3、c=4,则执行完语句 a*=16+(b+)-(+c)后,a的值是28 。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1