C语言程序设计期末考试题库.docx
《C语言程序设计期末考试题库.docx》由会员分享,可在线阅读,更多相关《C语言程序设计期末考试题库.docx(40页珍藏版)》请在冰豆网上搜索。
![C语言程序设计期末考试题库.docx](https://file1.bdocx.com/fileroot1/2023-2/13/0526878c-ceb3-4163-9936-1d71237de3e9/0526878c-ceb3-4163-9936-1d71237de3e91.gif)
C语言程序设计期末考试题库
C语言程序设计期末考试题库
C语言程序设计期末考试题库
一单项选择题
1完成C源文件编辑后到生成执行文件C语言处理系统必须执行的步骤依次为
A连接编译B连接运行
C编译运行D编译连接
2下列说法正确的是
A一个c语言程序并非总是从主函数位置开始执行的
B一个c语言程序有且只有一个主函数
C函数可以嵌套定义不可以嵌套调用
D程序函数的位置不可以任意
3下面是合法C语言标识符的是
A2A_KB_MN
C–M3DAC_2
4下列格式符中可以用于控制字符输出的是
AdBf
CoDc
5设xyz和k都是int型变量则执行表达式xy4z16k30后x的值是
A4B16
C30D50
6执行语句fori1s0i5isi后变量si的当前值是
A105B156
C155D106
7若有定义 intxp则以下正确的赋值表达式是
ApxBpx
CpxDpx
8以下对结构体类型变量的定义中不正确的是
AtypedefstructaaBdefineAAstructaa
intnAAintn
floatmfloatm
AAstud
AAstud
CstructDstruct
intnintn
floatmfloatm
aastud
structaastud
9有如下函数调用语句
funcrec1rec2rec3rec4rec5
函数调用语句中含有的实参个数是
A3B4
C5D以上均不是
10对于以下宏定义
defineSQxxx
definexySQx-SQy
宏调用2323执行后值为
A25B11
C43D以上均不是
11完成C源文件编辑后到生成执行文件C语言处理系统必须执行的步骤依次为
A连接编译B连接运行
C编译运行D编译连接
12下列说法正确的是
A一个c语言程序并非总是从主函数位置开始执行的
B一个c语言程序有且只有一个主函数
C函数可以嵌套定义不可以嵌套调用
D程序函数的位置不可以任意
13下面是合法C语言标识符的是
A2A_KB_MN
C–M3DAC_2
14下列格式符中可以用于控制字符输出的是
AdBf
CoDc
15设xyz和k都是int型变量则执行表达式xy4z16k30后x的值是
A4B16
C30D50
16执行语句fori1s0i5isi后变量si的当前值是
A105B156
C155D106
17若有定义 intxp则以下正确的赋值表达式是
ApxBpx
CpxDpx
18以下对结构体类型变量的定义中不正确的是
AtypedefstructaaBdefineAAstructaa
intnAAintn
floatmfloatm
AAstud
AAstud
CstructDstruct
intnintn
floatmfloatm
aastud
structaastud
19有如下函数调用语句
funcrec1rec2rec3rec4rec5
函数调用语句中含有的实参个数是
A3B4
C5D以上均不是
20对于以下宏定义
defineSQxxx
definexySQx-SQy
宏调用2323执行后值为
A25B11
C43D以上均不是
21.有如下程序的输出结果是
main
inty3x3z1
Printfdd\nxyz2
A34B42C43D33
22.下列说法不正确的是
A主函数main中定义的变量在整个文件或程序中有效
B不同函数中可以使用相同名字的变量
C形式参数是局部变量
D在一个函数内部可以在复合语句中定义变量这些变量只在本复合语句中有效
23.算术表达式xa3intxy24的值为其中x35a7y47
A2500000B3500000C3000000D4500000
24.设有如下定义
inta1b2c3d4m2n3
则执行表达式mab常数的书写格式决定了常数的类型和值0x1011是
A8进制整型常量B字符常量
C16进制整型常数D2进制整型常数执行下列程序后a值为
intab
a15b12
aa--ba5a5
A0B28C4D2
A地址传递B单向的值传递
C由实参传给形参再由形参传给实参D传递方式由用户指定
34.有如下程序段
intpab1
pap10apb
执行该程序段后a的值为
A12B11C10D编译出错
35.已知char和int类型分别占1和2个字节则sizeofyy的返回值应为union
chara1
inta2
inta3
yy
A2B4C5D定义有错
j为int型变量下列for循环语句的执行结果是
forj10j3j--
ifj3j--
--j--j
printfdj
A63B74C62D741
37宏定义"#definepxyzxyz"的宏替换"pax5y-31"应为
Aax5y-31Bax5y-31
Cax5y-31Dax5y-31下列各语句定义了数组其中一个不正确的是
Astaticinta[5]b[2][3]
Bcharno[30]rec[306]
Cintx246810
Dintx[10]12345helloCaintiDij
40一个C程序由若干个C函数组成各个函数在文件中的书写位置为
A任意B第一个函数必须是主函数其他函数任意
C必须完全按调用顺序排列D其他函数必须在前主函数必须在最后
41以下选项中合法的字符常量是BB\010
C68DD
42若有以下定义则表达式的值为3的是
intk7x12
Axk5Bxk-k5
Cxk-k5Dxk-x5
43若已定义x和y为double类型则表达式x1yx32的值是
A1B2
C20D25
44判断字符变量c的值为数字0---9则返回1否则返回0可用表达式
A0c9B0cc9
C0cc9D9c0
45有如下程序该程序的执行结果是
main
intn9
whilen6
n--printfdn
A987B876
C8765D9876
46若有以下的定义及语句则对数组元素正确引用的表达式是
inta[5][4]
intp[4]a
Ap1Bp3
Cp12Dp32
47有如下函数调用f1234的返回值为
intfchars
intk0
whiles
kk10s-0
returnk
A1234B1234
C4321D4321
48对于以下程序段运行后i的值为
enumWEEK1234567
enumWEEKa1
inti0
switcha
case1i2
case2i3
defaulti4
A2B0
C3D4
49执行下列程序后变量i的值应为
defineTAxyxy
inti3
iTAii12
A15B10
C12D14
50变量a所占内存字节数是
unionU
charst[4]
inti
longl
structA
intc
unionUu
a
A4B5
C6D8
51下列字符串不是标识符的是
sumBAverageCDay_nightDMDJOHN
52在C语言中回车换行符是
\nB\tC\vD\b
53在C语言中语句和数据定义是用作为结束标记的
A.句号B.逗号C分号D.括号
54设有如下定义
intx10y5z
则语句printfd\nzxyxy
的输出结果是
A.0B.1C3D.4
55以下程序的输出结果是
main
charc1ac2A
printfccdd\nc1c2c1c2
A.因输出格式不合法输出出错信息
B.aA9765C6597AaD.aAaA
56完成C源文件编辑后经过编译连接生成文件扩展名为的可执行文件
AcBexe
CobjDtxt
57下列运算符优先级最高的是
ABCD
58一个C程序的执行是从
A.本程序中的main函数开始到main函数结束
B.本程序中的第一个函数开始到本程序中的最后一个函数结束
C本程序中的main函数开始到本程序中的最后一个函数结束
D.本程序中的第一个函数开始到本程序中的main函数结束
59以下叙述中正确的是
A构成C程序的基本单位是函数
B可以在一个函数中定义另一个函数
Cmain函数必须放在其它函数之前
D所有被调用的函数一定要在调用之前进行定义
60设a和b均为double型常量且a50b20则表达式intab的值是
A25B2000000C2500000D2
61取模运算符不能用于哪一种类型的运算
AX103BX63CX10241DX628314
12下列对变量的定义哪个正确
AintxintyBchars1s2CfloatabDcharif
63字符串HELLO的长度是多少在内存中占用多少单元数
A长度为6占6个单元B长度为6占7个单元
C长度为7占7个单元D长度为7占6个单元
64下列错误的赋值语句是
AXY1BX34CXF-ADX2I
65如果a5b6那么aba5b-3和abab的值各是多少
A00B01C10D11
以下是C语言提供的合法数据类型关键字
AFloatBChARCIntgerDunsigned
以下选项中合法的字符常量是
ABB\010C68DD
设正xy均为整型变量且x10y3则以下语句的输出结果是printfdd\nx----y
A102B93C92D103
下列字符串不是标识符的是
YEARBAverageCstUDENTD7_num
66以下选项中合法的字符常量是BB\010
C68DD
67若有以下定义则表达式的值为3的是
intk7x12
Axk5Bxk-k5
Cxk-k5Dxk-x5
68若已定义x和y为double类型则表达式x1yx32的值是
A1B2
C20D25
69判断字符变量c的值为数字0---9则返回1否则返回0可用表达式
A0c9B0cc9
C0cc9D9c0
70有如下程序该程序的执行结果是
main
intn9
whilen6
n--printfdn
A987B876
C8765D9876
71若有以下的定义及语句则对数组元素正确引用的表达式是
inta[5][4]
intp[4]a
Ap1Bp3
Cp12Dp32
72有如下函数调用f1234的返回值为
intfchars
intk0
whiles
kk10s-0
returnk
A1234B1234
C4321D4321
73对于以下程序段运行后i的值为
enumWEEK1234567
enumWEEKa1
inti0
switcha
case1i2
case2i3
defaulti4
A2B0
C3D4
74执行下列程序后变量i的值应为
defineTAxyxy
inti3
iTAii12
A15B10
C12D14
75变量a所占内存字节数是
unionU
charst[4]
inti
longl
structA
intc
unionUu
a
A4B5
C6D8
76以下程序的输出结果是
main
inta3
printfd\naa-aa
A–6B12C0D–12
77下列说法错误的是
A一个c语言程序总是从主函数位置开始执行的
B一个c语言程序有且只有一个主函数
C函数可以嵌套定义不可以嵌套调用
D程序函数的位置可以任意
在C语言中语句和数据定义是用作为结束标记的
A.分号B.逗号C句号D.括号
语句xy2与下列语句结果一样
Axxy2Bx2xy
Cxxy2Dxy2x
下列各语句中能够且仅输出整型变量ab中最大值的是
Aifabprintf〃d\n〃aprintf〃d\n〃b
Bprintf〃d\n〃bifabprintf〃d\n〃a
Cifabprintf〃d\n〃aelseprintf〃d\n〃b
Difabprintf〃d\n〃aprintf〃d\n〃b
以下程序的输出结果是
main
intx4y2z
printfd\nzx-yxy
A.0B.1C2D.3
以下不能正确定义二维数组的选项是
Ainta[2][2]12
Binta[2][]123456
Cinta[2][2]123Dinta[][2]1234判断字符变量c的值为数字09则返回1否则返回0可用表达式
A0cc9B0c9
C0cc9D以上均不是
设j为int型变量下列for循环语句的执行结果是
forj7j3j--
ifj3j--
--j--j
printfdj
A4B40C死循环D41
已知char和int类型分别占1和2个字节则sizeofyy的返回值应为
union
chara1
inta2
inta3
yy
A2B4C5D定义有错
以下程序的运行结果是
defineMINxyxyxy
main
inti10j13kk10MINij
printfd\nk
A10B130C100D13
87下列字符序列中不合法的C语言标识符的是
A.abc123B.no1C._123_D._ok
88以下说法中正确的是
A.C语言程序总是从第一个定义的函数开始执行
B.在C语言程序中要调用的函数必须在main函数中定义
C.C语言程序总是从main函数开始执行
D.C语言程序中的main函数必须放在程序的开始部分
89设以下变量均为int类型则值不等于7的表达式是
A.mn6mnm1
B.mn6mnn1
C.m6m1n6mn
D.m6m1nmn1
90当调用函数时实参是一个数组名则向函数传送的是A数组的长度B数组的首地址
C数组每一个元素的地址D数组每个元素中的值
Ai2sum1Bi9sum9Ci10sum9D运行出现错误
92设xy和z都是int类型变量且x3y4z5则下面的表达式中值为0的表达式是
A.xyxy
C.xyzy-zD.xyz1
main
intn4
whilen--
printf″d″--n
A20B31C321D210
94以下对一维整型数组a正确定义的是
Ainta10Bintn10a[n]
CintnDdefineSIZE10
scanf"d"ninta[SIZE]
inta[n]
95若定义如下变量和数组
inti
intx[3][3]123456789
则下面语句的输出结果是
fori0i3iprintf"d"x[i][2-i]
A159B147C357D369
96有下列程序输出结果是
include
main
union
intk
chari[2]
sa
sa
s-i[0]0x39
s-i[1]0x38
printf"x\n"s-k
A3938 B3839 C380039 D390038
97完成C源文件编辑后到生成执行文件C语言处理系统必须执行的步骤依次为
A连接编译B编译连接
C连接运行D运行
98下列说法错误的是
A一个c语言程序总是从主函数位置开始执行的
B一个c语言程序有且只有一个主函数
C函数可以嵌套定义不可以嵌套调用
D程序函数的位置可以任意
99C语句xy2还可以写作
Axxy2Bx2yx
Cxxy2Dxy2x
100下列格式符中可以用于控制输出十进制整数的是
AdBf
CoDc
101下列各语句中能够且仅输出整型变量ab中最大值的是
Aifabprintf〃d\n〃aprintf〃d\n〃b
Bprintf〃d\n〃bifabprintf〃d\n〃a
Cifabprintf〃d\n〃aelseprintf〃d\n〃b
Difabprintf〃d\n〃aprintf〃d\n〃b
102执行语句fori1i10isi后变量si的当前值是
A5511B5510
C4510D4511
103下列各语句定义了数组其中一个不正确的是
Ainta〔5〕b〔2〕〔3〕
Bcharno〔30〕rec〔〕
Cintx〔〕246810
Dintx〔10〕12345
104下列算法的特性其中哪一个是不正确的
A有穷性B有一个或多个输入
C不确定性D可执行性
105执行语句fori0i10iascanf〃d〃a试图为int类型数组a〔10〕输入数据是错误的错误的原因是
A变量不能做自增运算B数组首地址不可改变
Ci应写作iDa应写作a
106定义函数时缺省函数的类型声明则函数类型取缺省类型
AvoidBchar
CfloatDint
二填空题
1设inta5c32floatb25表达式bca的值为______
2若x和a均是int型变量则计算xa462后x的值是__
3设a3b4c5则abcbc的值为___
4有如下程序段 intk10
whilek0kk-1
则循环体语句执行___次
5inti0s0
whileinsi
等价于intis
for______________________
6将p说明为字符数组指针数组大小为10应写为______________
7对于intpqi5j6执行
piqppj
输出结果p_______q________
8设有以下变量定义并已赋确定的值则表达式wxz-y所求得的数据类型为_____charwintxfloatydoublez
9当a=5b=4c=2时表达式abc的值为______
10用for循环打印147101316192225其语句应fori1i9iprintf3d
11执行语句a5c6后变量ac的值依次为____
12若有定义inta[3][4]12046810则a[1][2]的值为a[2][1]的值为_
13表达式33的值为_______________is
for______________________
21将p说明为字符数组指针数组大小为10应写为______________
22对于intpqi5j6执行
piqppj
输出结果p_______q________
23设xyz和k都是int型变量则执行表达式xy4z16k32后x的值为____
24定义字符指针数组a数组大小为10应写为
25对于整形变量ij值分别为12执行scanfidjdijC语言中函数值类型的定义可以缺省此时函数值的隐含类型是
31一个C源程序至少包括一个即
32一个函数由两部分组成它们是和
33C语言的数