C语言练习题a汇总Word格式.docx
- 文档编号:20370157
- 上传时间:2023-01-22
- 格式:DOCX
- 页数:17
- 大小:25.35KB
C语言练习题a汇总Word格式.docx
《C语言练习题a汇总Word格式.docx》由会员分享,可在线阅读,更多相关《C语言练习题a汇总Word格式.docx(17页珍藏版)》请在冰豆网上搜索。
>
=c)D.(c>
)&
(c<
)
11.设有数组定义:
charch[]=“student”,则数组ch所占的空间为()。
A.5字节B.6字节C.7字节D.8个字节
12.数学比较表达式:
5>
x≥2对应的C语言逻辑表达式是()。
A.5>
x>
=2B.5>
x&
x>
2&
x=2C.x<
5&
=2D.x<
5||(x>
2)
13.若有定义:
inta[][3]={1,2,3,4,5,6},则a[1][0]的值是()。
A.4B.1C.2D.5
14.以下函数调用语句中,含有实参的个数为()。
fun(max(2,3),4);
A.1B.2C.3D.4
15.在C语言中,若对函数类型未另显示说明,则函数的隐含类型是()类型。
A.voidB.doubleC.intD.char
16.在C语言中,每个语句必须以()结束。
A.回车符B.冒号C.逗号D.分号
17.字符串的结束标志是()。
A.0B.'
0'
C.'
\0'
D."
0"
18.printf("
%c,%d"
'
b'
'
);
的输出结果是()。
A.b,98B.b98C.98,bD.98b
19.复合语句是用()括起来的语句组。
A.()B.[]C.{}D.<
>
20.inta[4]={5,3,8,9};
其中a[3]的值为()。
A.5B.3C.8D.9
21.若有以下定义:
floatw[20];
,则w数组元素的下标最大为()。
A.20B.19C.21D.0
22.for(i=1;
i<
9;
i+=1);
该循环共执行了()次。
A.9B.8C.0D.1
23.基本整型的数据类型符为()。
A.intB.charC.floatD.double
24.在C语言中,printf和scanf函数均包含在头文件()中。
A.stdio.hB.math.hC.string.hD.time.h
25.C语言程序的基本单位是()。
A.过程
B.函数
C.
语句
D.子程序
26.选出下列标识符中不合法的标识符的是()。
A.answer
B.to
C.signed
D.max
27.C语言用()表示逻辑“真”值。
A.trueB.t或yC.非零值 D.整型值0
28.在C程序中有如下语句:
charfunc(intx,inty);
它是()。
A.对函数func的定义。
B.对函数func的调用。
C.对函数func的声明。
D.不合法的
29.若有说明
int
a[10];
则对a数组元素的不正确引用是()。
A.a[0]
B.a[i]
C.a[10]
D.a
[2+3]
30.以下对二维数组a的正确定义是()。
A.int
a[3][]
B.float
a(3,4)
C.float
a[3][4]
D.int
a(3)(4)
31.C语言允许函数类型缺省定义,此时函数值隐含的类型是()。
A.float
B.int
C.long
D.double
32.一个C语言的执行是从()。
A.本程序的主函数开始,到本程序的主函数结束
B.本程序的第一个函数开始,到本程序的最后一个函数结束
C.本程序的主函数开始,到本程序的最后一个函数结束
D.本程序的第一个函数开始,到本程序的主函数结束
33.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是()。
A.地址传递B.单向值传递
C.由实参传给形,再由形参传回实参D.传递方式由用户指定
34.以下程序的输出结果是()。
intx=10,y=10;
printf(“%d,%d\n”,x++,++y);
A.10,11B.11,10
C.10,10D.11,11
35.可用于跳出switch和循环结构的语句是()。
A.break语句B.return语句C.continue语句D.空语句
36.若x=5,y=3则y*=x+5;
y的值为()。
A.10 B.20 C.15 D.30
37.若有定义int
x=3,y=2和float
a=2.5,b=3.5,则表达式:
(x+y)%2+(int)a/(int)b的值是()。
A.
0
B.2
C.1.5
D.1
38.下列程序的输出结果是()。
charstr1[10]="
abcd"
str2[10]="
ABCDEF"
strcpy(str1,str2);
printf("
%s"
str1);
A.abcdB.ABCDEFC.abcdABCDEFD.abcdEF
39.假定w、x、y、z、m均为int型变量,有如下程序段:
w=1;
x=2;
y=3;
z=4;
m=(w<
x)?
w:
x;
m=(m<
y)?
m:
y;
则该程序段执行后,m的值是()。
A.4
B.3
C.2
40.表达式:
10!
=9的值是()。
A.trueB.非零值C.0D.1
41.下面合法的C语言字符常量是()。
'
\t'
B.
"
A"
C.
65
D.
A
42.C语言的基本数据类型包括()。
A.整型,实型,逻辑型
B.整型,实型,字符型
C.整型,字符型,逻辑型
D.整型,实型,逻辑型,字符型
43.C语言中while和do—while循环的主要区别是()。
A.do—while的循环体至少无条件执行一次
B.while的循环控制条件比do—while的循环控制条件严格
C.do—while允许从外部转到循环体内
D.do—while循环体不能是复合语句
44.单精度实数的数据类型符为()。
45.字符串常量使用()括起来。
46.C语言规定,函数返回值的类型是由()。
A.return语句中的表达式类型所决定B.调用该函数时的主调函数类型所决定
C.调用该函数时系统临时决定D.在定义该函数时所指定的函数类型决定
47.设有说明:
char
w;
float
则表达式:
w*x-y值的数据类型()。
B.char
C.int
D.double
48.在C语言中,每个语句必须以()结束。
49.C语言规定:
在一个源程序中,main函数的位置()。
A.必须在最开始 B.必须在系统调用的库函数的后面
C.可以任意 D.必须在最后
50.C语言程序的基本单位是()。
。
A.函数B.过程C.子程序D.子例程
51.在下列字符串中,合法的标识符是()。
A.p12&
.aB.stud_100C.water$12D.88sum
52、求标有/**/语句的执行次数()。
inta=0,i;
for(i=0;
20;
i++)
{if(i%5!
=0)break;
a+=i;
/**/
}
A.0B.1C.20D.19
53、现有以下定义,inta;
doubleb;
floatc;
chark;
则下面的表达式a*b+c/k值的类型是()。
A.intB.doubleC.floatD.char
54、C语言规定,调用一个函数时,实参变量和形参变量之间的数据传递是()。
A.地址传递B.由实参传给形参,并由形参返回给实参
C.值传递D.由用户指定传递方式
55、printf(“%d”,15/4);
A.2B.3C.4D.3.75
56、在C语言中,以下正确的描述是()。
A.函数的定义可以嵌套,但函数的调用不可以嵌套
B.函数的定义不可以嵌套,但函数的调用可以嵌套
C.函数的定义和函数的调用均不可以嵌套
D.函数的定义和函数的调用均可以嵌套
57、若变量c为char类型,能正确判断出c为大写字母的表达式是()。
A'
Z'
58、若x=0,y=3,z=3,以下表达式值为0的是()。
A.!
xB.x<
0C.x&
zD.y=x||z/3
59、数学比较表达式:
A.5>
=2B.5>
x=2C.x<
=2D.x<
5||x>
2
60、设有数组定义:
charch[]=“computer”,则数组ch所占的空间为()。
A.6字节B.7字节C.8字节D.9字节
61、在C语言中,若对函数类型未显式说明,则函数的隐含类型是类型。
A.voidB.doubleC.intD.char
62、在C语言中,每个语句必须以结束。
A.回车符B.冒号C.逗号D.分号
63、字符串的结束标志是。
A.0B.'
C.'
D."
64、复合语句是用括起来的语句组。
A.()B.[]C.{}D.<
65、C语言程序的基本单位是()。
A.子程序B.程序C.函数D.过程
66、以下不正确的C语言标识符是()。
A.ABCB.abcC.a_bcD.ab.c
67.C语言允许函数值类型缺省定义,此时该函数值隐含的类型是()。
A.float型B.int型C.long型D.double型
68.C语言规定,函数返回值的类型是由()。
A.return语句中的表达式类型所决定
B.调用该函数时的主调函数类型所决定
C.调用该函数时系统临时决定
D.在定义该函数时所指定的函数类型决定
69.printf(“%d”,17/5);
A.3.4B.4C.3.6D.3
70.printf(“%d”,7%4);
71.复合语句是用()括起来的语句组。
A.()B.{}C.[]D.<
72.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是()。
A.地址传递B.值传递
C.由实参传给形参,再由形参传回实参D.传递方式由用户指定
73.若x=0,y=3,z=3,以下表达式值为0的是()。
A.!
74.若有定义:
inta[][3]={1,2,3,4,5,6},则a[1][0]的值是()。
75.设有数组定义:
charch[]=student”,则数组ch所占的空间为()。
76.若有数组定义:
inta[10],则()数组引用是合法的。
A.a[0]B.a(0)C.a[10]D.a(10)
77.求标有/**/语句的执行次数()。
for(i=1;
78.有定义语句:
inta=l,b=2,c=3,x;
则以下各程序段执行后,x的值不为3的是()。
A.if(c<
a)x=l;
B.if(a<
3)x=3;
elseif(b<
a)x=2;
elseif(a<
2)x=2;
elsex=3;
elsex=l;
C.if(a<
D.if(a<
b)x=b;
if(a<
if(b<
c)x=c;
1)x=l;
if(c<
a)x=a;
79.字符型数据使用()括起来。
A.单引号B.双引号C.圆括号D.#
80.执行下面语句后,a的值为()。
inta=1;
if
(a>
0)
a+=1;
1)
a=0;
A.0B.1C.2D.3
81.以下程序段的执行结果为()。
main()
{charc1,c2;
c1=97;
c2=98;
printf(“%c,%c\n”,c1,c2);
A.97,98B.a,bC.A,BD.以上都不对
82.在C语言中,要求运算数必须是整型的运算符是()。
A.%B./C.<D.以上都不对
83.以下说法中正确的是()。
A.C语言程序总是从第一个定义的函数开始执行
B.在C语言程序中,要调用的函数必须放在main()函数中定义
C.C语言程序总是从main()函数开始执行
D.C语言程序中的main()函数必须放在程序的开始部分
84.下列程序段的输出结果是()。
#defineN10
main()
{intx=8;
printf(“%d”,N+x);
A.8B.NC.10D.18
二、判断题(每小题1分,共10分)
注意:
正确的填A,错误的填B
1.C语言有三种结构化程序设计方法,分别为顺序结构、选择结构和循环结构。
( )
2.在C程序中,min和Min代表不同的变量。
()
3.C语言本身不提供输入输出语句,输入和输出操作是由库函数来实现的。
()
4.C语言规定:
在一个源程序中,main函数的位置必须在最开始。
5.在C语言中,要求运算数必须是整型的运算符是/。
()
6.在C语言中,逗号运算符的优先级最低。
7.字符串是C语言中一种基本数据类型,字符串总是以‘\n’作为结束标志。
8.有数组定义int
a[2][2]={{1},{2,3}};
则a[2][2]的值为3。
9.在调用函数时,实参的个数与形参的个数可以不一致。
10.C语言程序的变量必须先定义再使用。
11、C语言有三种结构化程序设计方法,分别为顺序结构、选择结构和循环结构。
(
)
12、C语言中的逻辑值“真”是用T表示的,逻辑值“假”是用F表示的。
(
)
13、利用printf函数可以输出一个字符串。
14、一个C程序必须有且只能有一个main()函数。
15、for语句作为循环控制语句时,从语法上将其括号内各个表达式都可缺省,但表达式内的分号却不可以省。
()
16、在C语言中,虽然有逻辑运算,但没有逻辑型变量。
17、在调用函数时,实参的个数与形参的个数可以不一致。
18、C语言本身没有输入输出语句,是用输入输出函数实现输入输出操作。
19、C程序的基本组成单位是函数。
20、字符串是C语言中一种基本数据类型,字符串总是以‘\n’作为结束标志。
21、数组大小固定,所有元素的类型必须相同()
22、C语言中,数组的各元素必须具有相同的类型。
23、C语言规定:
标识符应由字母、下划线和数字组成,且可以是上述字符的任意组合,其长度也是任意的。
24、数组在定义时没有必要指定数组的长度,其长度可以在程序中根据元素个数再决定。
25、if语句有多种使用方法,其中if子句和else子句也都可以单独使用。
26、for语句作为循环控制语句时,从语法上将其括号内各个表达式都可缺省,但表达式内的分号却不可以省。
27、在C语言中,虽然有逻辑运算,但没有逻辑型变量。
)
28、在对一个C程序进行编译的过程中,可以发现注释中的拼写错误。
29、C语言本身没有输入输出语句,是用输入输出函数实现输入输出操作的。
30、C程序中数组名可以与其他变量名相同。
31、字符串是C语言中一种基本数据类型,字符串总是以‘\n’作为结束标志。
32.利用函数putchar()可以输出一个字符串。
33.一个循环的循环体中还可以包含另外一个循环,称为循环嵌套。
33.C语言不区分大小写字母,如ABC和abc是相同的标识符。
34.在C程序中,语句之间必须要用分号“;
”分隔()
35.一个C程序必须有且只能有一个main()函数。
36.C语言中标识符不能与保留字同名。
37.C语言中数组名可以与其他变量名相同。
38.字符数据在计算机内部也是以二进制形式来表示的。
39.在调用函数时,实参的个数与形参的个数可以不一致。
40.while循环是“先执行,后判断”,即不管循环条件是否满足,循环体至少执行一次。
三、程序分析题(每小题4分,共24分)
1.分析程序的运行结果___________________
#include<
stdio.h>
voidmain()
{
int
a,b,x;
a=3;
b=a--;
x=a+b;
printf(“%d”,x);
}
2.分析程序的运行结果___________________
#include<
voidmain()
{inta=5,b=3;
if(a>
b)printf(“yes”);
elseprintf(“no”);
3.分析程序的运行结果___________________
#include<
voidmain()
{
inti,t;
t=1;
for(i=2;
=10;
t=(t+1)*2;
printf("
%d\n"
t);
4.若i=7,下列程序的运行结果是。
switch(i)
{case6:
i+=1;
break;
case7:
i+=2;
case8:
i+=3;
case9:
i+=4;
i);
5.利用一维数组求斐波那契数列,补充完整以下程序。
{inti,f[20]={1,1};
for(i=2;
___________________
for(i=0;
%12d"
f[i]);
6.判断某一年是否是闰年,请补充完整以下程序。
{intyear;
printf(“pleaseinputayear:
”);
scanf(“%d”,year);
if()
printf(“%disaleapyear!
\n”,year);
else
printf(“%disnotaleapyear!
7.写出下面程序的执行结果。
{intnum=0;
while(num<
=2)
{num++;
printf(“%d\n”,num);
8.以下程序段的输出结果是_________。
intx=5;
if(x>
0)y=1;
elseif(x==0)y=0;
elsey=1;
%d"
y);
9.计算1+1/2+1/4+…+1/50的值,请填空使完整。
main()
{inti=2;
floatsum=1.0;
while(i<
=)
{sum+=1.0/i;
printf(“sum=%f\n”,sum);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 练习题 汇总