计算机测试计算机二级考试C语言课后模拟题二及答案.docx
《计算机测试计算机二级考试C语言课后模拟题二及答案.docx》由会员分享,可在线阅读,更多相关《计算机测试计算机二级考试C语言课后模拟题二及答案.docx(13页珍藏版)》请在冰豆网上搜索。
![计算机测试计算机二级考试C语言课后模拟题二及答案.docx](https://file1.bdocx.com/fileroot1/2023-4/16/dac91832-4a29-413a-84b1-316eb43662c8/dac91832-4a29-413a-84b1-316eb43662c81.gif)
计算机测试计算机二级考试C语言课后模拟题二及答案
【计算机测试】2013年计算机二级考试C语言课后模拟题二及答案
一、单项选择题
1.下面四个选项中,均不是c语言关键字的选项是(A)。
A)define IF Type
B)getc char printf
C)include scanf case
D)while go pow
2.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符(C)。
A)必须为字母
B)必须为下划线
C)必须为字母或下划线
D)可以是字母、数字和下划线中任一种字符
3.下列四个选项中,均是C语言关键字的选项是(B)。
A)autoenuminclude
B)switchtypedefcontinue
C)signedunionscanf
D)ifstructtype
4.下面四个选项中,均是不合法的用户标识符的选项是(C)。
A)AP_0do
B)floatla0_A
C)b-agotoint
D)_123tempint
5.以下有4组用户标识符,其中合法的一组是(C)。
A)For-subCase
B)4dDOSize
C)f2_G3IFabc
D)WORDvoiddefine
6.下列选项中,合法的C语言关键字是(D)。
A)VAR
B)cher
C)integer
D)default
7.下面四个选项中,均是合法整型常量的选项是(A)。
A)160-0xffff011
B)-0xcdf01a0xe
C)–019860120668
D)-0x48a0x2e50xe
8.下面四个选项中,均是正确的八进制数或十六进制数的选项是(C)。
A)-100x8f-011
B)0abc-0170xc
C)010-0x110xf1
D)0a12-0x123-0xa
9.设C语言中,一个int型数据在内存中占2个字节,则unsignedint型数据的取值范围为(C)。
A)0~255
B)0~32767
C)0~65535
D)0~2147483647
10.在C语言中,不正确的int类型的常数是(A)。
A)32768
B)0来源:
C)037
D)0xAF(11101111=128+64+32+8+4+2+1) 11.下面四个选项中,均是不合法的整型常量的选项是(D)。
A)-0f1-0xffff0011
B)-0xcdf01712456
C)-0189995e2
D)-0x48eg-06803f
12.下面四个选项中,均是不合法的浮点数的选项是(B)。
A)160.0.12e3
B)1232e4.2.e5
C)-.18123e40.0
D)-e3.2341e3
13.下面四个选项中,均是合法的浮点数的选项是(B)。
A)+1e+15e-9.403e2
B)-.6012e-4-8e5
C)123e1.2e-.4+2e-1
D)-e3.8e-45.e-0
14.下列变量定义中合法的是(A)。
A)short_a=1-.le-1;
B)doubleb=1+5e2.5;
C)longdo=0xfdaL;
D)float2_and=1-e-3;
15.以下选项中合法的字符常量是(B)。
A)“B”
B)‘\010’
C)68
D)D
16.以下选项中,非法的字符常量是(C)。
A)'\t'
B)'\17'
C)"n"
D)'\xaa'
17.以下所列的C语言常量中,错误的是(B)。
A)0xFF
B)1.2e0.5
C)2L
D)‘\72’
18.在C语言中,char型数据在内存中的存储形式是(D)。
A)补码
B)反码
C)原码来源:
D)ASCII码
19.下面四个选项中,均是合法转义字符的选项是(A)。
A)‘\’’‘\\’‘\n’
B)‘\’‘\017’‘\”’
C)‘\018’‘\f’‘xab’
D)‘\\0’‘\101’‘xlf’
20.下面四个选项中,均是不合法的转义字符的选项是(B)。
A)‘\””’‘\\’‘\xf’
B)‘\1011’‘\’‘\a’
C)‘\011’‘\f’‘\}’
D)‘\abc’‘\101’‘xlf’
21.下面正确的字符常量是(C)。
A)“c”
B)‘\\’’
C)‘W’
D)‘’
22.下面四个选项中,均是正确的数值常量或字符常量的选项是(D)。
A)0.00f8.9e‘&’
B)‘a’3.9e-2.51e1‘\’’
C)‘3’0110xff000a
D)+0010xabcd2e250.
23.下面不正确的字符串常量是(A)
A)‘abc’
B)”1212”
C)”0”
D)””
24.在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为(A)。
A)char B)char=int C)char D)char=int=longint<=float 25.若有说明语句:
charc='\72';则变量c(A)。
A)包含1个字符
B)包含2个字符
C)包含3个字符
D)说明不合法,c的值不确定
26.设变量a是整型,f是实型,i是双精度型,则表达式10+a+i*f值的数据类型为(C)。
A)int
B)float
C)double
D)不确定
27.表达式18/4*sqrt(4.0)/8值的数据类型为(C)。
A)int
B)float
C)double
D)不确定
28.设有说明:
char w;int x;float y;double z;则表达式w*x+z-y值的数据类型为(D)。
A)float
B)char
C)int
D)double
29.以下选项中属于C语言的数据类型是(C)。
A)复数型
B)逻辑型
C)双精度型
D)集合型
30.以下程序的输出结果是(A)
main()
{
charc=‘z';
printf(“%c”,c-25);
}
A)a
B)Z
C)z-25
D)y
31.若有定义:
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
32.若有代数式3ae/bc,则不正确的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
33.设有int x=11;则表达式(x++*1/3)的值是(A)。
A)3
B)4
C)11
D)12
34.以下变量x.、y、z均为double类型且已正确赋值,不能正确表示数学式子x/yz的C语言表达式是(A)。
A)x/y*z
B)x*(1/(y*z))
C)x/y*1/z
D)x/y/z
35.C语言中运算对象必须是整型的运算符是(A)。
A)%=
B)/
C)=
D)<=
36.下列程序的输出结果是(C)。
main()
{
doubled=3.2;intx,y;
x=1.2;y=(x+3.8)/5.0;
printf("%d\n",d*y);
}
A)3
B)3.2
C)0
D)3.07
37.若x,i,j和k都是int型变量,则计算下面表达式x=(i=4,j=16,k=32)后,x的值为(C)。
A)4
B)16
C)32
D)52
38.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+B)的值是(B)。
A)7
B)8
C)6
D)2
39.假定x和y为double型,则表达式x=2,y=x+3/2的值是(D)。
A)3.500000
B)3
C)2.000000
D)3.000000
40.若以下变量均是整型,且num=sum=7;则计算表达式sum=num++,sum++,++num后sum的值为(B)。
A)7
B)8
C)9
D)10
41.若有定义intk=7,x=12;,则以下能使值为3的表达式是(D)。
A)x%=(k%=5)
B)x%=(k-k%5)
C)x%=k-k%5
D)(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()
{
intx=‘f’;
printf(“%c\n”,‘A’+(x-‘a’+1));
}
A)G
B)H
C)I
D)J
44.下列程序执行后的输出结果是(C)。
main()
{charx=0xFFFF;printf("%d\n",x--);}
A)–32767
B)FFFE
C)-1
D)–32768
45.以下程序的输出结果是(D)。
main()
{inta=3;
printf("%d\n",(a+=a-=a*a));
}
A)-6
B)12
C)0
D)–12
46.若变量已正确定义并赋值,下面符合C语言语法的表达式是(B)。
A)a:
=b+1
B)a=b=c+2
C)int18.5%3
D)a=a+7=c+b
47.若有以下程序段,
intc1=1,c2=2,c3;
c3=1.0/c2*c1;
则执行后,c3中的值是(A)。
A)0
B)0.5
C)1
D)2
48.有如下程序
main()
{inty=3,x=3,z=1;
printf(“%d%d\n”,(++x,y++),z+2);
}
运行该程序的输出结果是(D)。
A)34
B)42
C)43
D)33
49.已知大写字母A的ASCII码为65,以下程序的运行结果为(A)。
#include
main()
{
charc1=‘A’,c2=‘Y’;
printf(“%d,%d\n”,c1,c2);
}
A)65,89
B)A,Y
C)65,88
D)65,90
50.以下程序的输出结果是(D)。
#include
main()
{
inta=010,b=10;
printf(“%d,%d\n”,a++,--B);
}
A)10,10
B)8,10
C)10,9
D)8,9
51.以下程序的输出结果是(B)。
main()
{
inta,b;
a=100;b=200;
printf(“%d\n”,(a,
B));
}
A)100
B)200
C)20000
D)100=200
52.执行语句y=10;x=y++;的结果是(C)。
A)x=10,y=10
B)x=11,y=11
C)x=10,y=11
D)x=11,y=10
53.在表示C语言的整型变量时,表示“无符号长整型”的符号是(D)。
A)unsignedint
B)unsignedshort
C)longint
D)unsignedlong
54.在下列形式的常数中,C程序不允许出现的是(B)。
A).45
B)±123
C)25.6e-2
D)4e3
55.以下程序的输出结果是(C)。
main()
{floatx=3.6;
inti;
i=(int)x;
printf(“x=%f,i=%d”,x,i);
}
A)x=3.600000,i=4
B)x=3,i=3
C)x=3.600000,i=3
D)x=3.000000,i=3.600000
56.在C语言中,要求运算数必须是整型数据的运算符是(B)。
A)/
B)%
C)!
D)<
57.执行下列语句的结果是(C)。
i=3;
printf(“%d,”,++i);
printf(“%d”,i++);
A)3,3
B)3,4
C)4,3
D)4,4
58.已知x=3,y=2,则表达式x*=y+8的值为(C)。
A)3
B)2
C)30
D)14
59.执行语句inti=65536;printf(“%d\n”,i);的结果是(B)。
A)65536
B)0
C)有语法错误,无输出结果
D)-1
60.在C语言中,不正确的int类型的常数是(A)。
A)32768
B)0
C)037
D)0xAF
61.C语言提供的合法关键字是(D)。
A)swicth
B)chan来源:
C)Case
D)default
62.表示“在使用x之前,先使x的值加1”的正确方式是(A)。
A)++x
B)x++
C)+x
D)+x+
63.设x的值为5,则表达式(++x)+(++x)+(++x)的值是(D)。
A)24
B)20
C)15
D)21
64.在C语言中,合法的字符常量是(B)。
A)‘\084’
B)‘\x43’ (十六进制)
C)‘ab’
D)“\0”
65.若已定义x和y为double类型,则表达式:
x=1,y=x+3/2的值是(C)。
A)1
B)2
C)2.0
D)2.6
66.若t为double类型,表达式t=1,t+5,t++的值是(D)。
A)1
B)6.0
C)2.0
D)1.0
67.若有以下定义和语句,则输出结果是(B)。
charc1=‘b’,c2=‘e’;
printf(“%d,%c\n”,c2-c1,c2-’a’+’A’);
A)2,M
B)3,E
C)2,E
D)输出项与对应的格式控制不一致,输出结果不确定
68.设有如下的变量定义:
inti=8,a,b;
doublex=1.42,y=5.2;
则以下符合C语言语法的表达式是(A)。
A)a+=a-=(b=4)*(a=3)
B)x%(-3)
C)a=a*3=2
D)y=float(i)
69.若有以下定义和语句:
intu=010,v=0x10,w=10;
printf(“%d,%d,%d\n”,u,v,w);()
则输出结果是(A)。
A)8,16,10
B)10,10,10
C)8,8,10
D)8,10,10
二、填空题
1.若x和a均是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.若有定义:
intb=7;floata=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为5.5。
8.若有定义:
inta=2,b=3;floatx=3.5,y=2.5;则表达式(float)(a+
B)/2+(int)x%(int)y的值为3.5。
9.若有定义:
intx=3,y=2;floata=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()
{unsignedshorta=65536;intb;
printf(“%d\n”,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。