收集了一些经典C语言计算机二级和C语言期末考试题库
整理不易,大家点赞收藏支持一下
祝大家计算机二级和期末考试都高分过
系列文章:
目录
一、填空 共15题 (共计15分)
第1题
一个C语言程序的开发过程包括:编辑、【1】、连接和运行4步.
=======(答案1)=======
编译
第2题
一个C源程序中至少应包括一个【1】函数.
=======(答案1)=======
main
第3题
C语言中,【1】是程序的基本组成部分.
=======(答案1)=======
函数
第4题
已知 a=10,e=0,则表达式!a<e的值为【1】.
=======(答案1)=======
0
第5题
表达式 i++ 相当于表达式i=【1】.
=======(答案1)=======
i+1
=========或=========
1+i
第6题
下列程序的输出是【1】,
main()
{
int a=011;
printf("%d\n",++a);
}
=======(答案1)=======
10
第7题
以下程序的输出结果为【1】.
#include "stdio.h"
main()
{
int a=010, j=10;
printf("%d,%d\n",++a,j--);
}
=======(答案1)=======
9,10
第8题
在C语言中,整数可用【1】进制、【2】进制和【3】进制三种.
=======(答案1)=======
十 或 八 或 十六
=======(答案2)=======
八 或 十 或 十六
=======(答案3)=======
十六 或 十 或 八
第9题
若有以下定义,则计算表达式y+=y-=m*=y后的y值是【1】.
int m=5,y=2;
=======(答案1)=======
-16
第10题
已知x=2,y=2 则表达式x*=y+8的值为【1】.
=======(答案1)=======
20
第11题
若a是int型变量,则表达式(a=4*5,a*2),a+6的值为【1】.
=======(答案1)=======
26
第12题
输入整型变量a的值.
int a;
scanf("%d",【1】);
=======(答案1)=======
&a
第13题
int x=2,y=3,z=4; 则表达式x+y&&z的值为【1】.
=======(答案1)=======
1
第14题
已知 i=5,写出语句 i-=0x12; 执行后整型变量 i 的值是【1】.
=======(答案1)=======
-13
第15题
下列程序的输出结果是【1】.
#include<stdio.h>
void main()
{ int i=-200,j=25;
printf("%d %d",i,j);
printf("i=%d,j=%d\n",i,j);
}
=======(答案1)=======
-200 25i=-200,j=25
二、判断 共10题 (共计10分)
第1题
C语言规定,在一个源程序中,main函数必须在最开始.
答案:N
第2题
在C程序中,每行中只能写一条语句.
答案:N
第3题
一个C程序中至少有一对大花括号{}.
答案:Y
第4题
在程序中,APH和aph是两个不同的变量.
答案:Y
第5题
已知ch是字符型变量,则ch="\";是正确的赋值语句.
答案:N
第6题
若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变.
答案:Y
第7题
若有定义和语句:
int a;char c;float f;scanf("%d,%c,%f",&a,&c,&f);
如果通过键盘输入:
10,A,12.5,则a=10,c='A',f=12.5.
答案:Y
第8题
x*=y+8 等价于 x=x*(y+8).
答案:Y
第9题
[3,6,18,23]是合法的表达式.
答案:N
第10题
逻辑表达式-5&&!8的值为1.
答案:N
三、单选 共30题 (共计30分)
第1题
以下叙述中正确的是().
A:C语言的源程序不必通过编译就可以直接运行
B:C语言中的每条可执行语句最终都将被转换成二进制的机器指令
C:C源程序经编译形成的二进制代码可以直接运行
D:C语言中的函数不可以单独进行编译
答案:B
第2题
以下选项中合法的用户标识符是().
A:int
B:a#
C:5mem
D:_243
答案:D
第3题
以下叙述不正确的是().
A:一个C源程序可由一个或多个函数组成
B:一个C源程序必须包含一个main()函数
C:C程序的基本组成单位是函数
D:在C程序中,注释说明只能位于一条语句的后面
答案:D
第4题
在C语言中,下列合法的字符常量是().
A:'\039'
B:'\x76'
C:'ab'
D:'\o'
答案:B
第5题
以下叙述中正确的是 ().
A:C语言比其他语言高级
B:C语言可以不用编译就能被计算机识别执行
C:C语言以接近英语国家的自然语言和数学语言作为语言的表达形式
D:C语言出现的最晚,具有其他语言的一切优点
答案:C
第6题
C语言源程序名的后缀是().
A:exe
B:c
C:obj
D:cp
答案:B
第7题
任何一个C语言的可执行程序都是从()开始执行的.
A:程序中的第一个函数
B:main( )函数的入口处
C:程序中的第一条语句
D:编译预处理语句
答案:B
第8题
以下叙述正确的是().
A:在C程序中,main()函数必须位于程序的最前面
B:C程序中的每行中只能写一条语句
C:C语言本身没有输入输出语句
D:在对一个C程序进行编译的过程中,可发现注释中的拼写错误
答案:C
第9题
关于建立函数的目的,以下正确的说法是().
A:提高程序的执行效率
B:提高程序的可读性
C:减少程序的篇幅
D:减少程序文件所占内存
答案:B
第10题
一个C程序的执行是从().
A:本程序的main函数开始,到main函数结束
B:本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C:本程序的main函数开始,到本程序文件的最后一个函数结束
D:本程序文件的第一个函数开始,到本程序main函数结束
答案:A
第11题
以下选项中合法的实型常数是().
A:5E2.0
B:E-3
C:.2E0
D:1.3E
答案:C
第12题
下列运算符中,不属于关系运算符的是().
A:<
B:>
C:>=
D:!
答案:D
第13题
执行下列语句后,a和b的值分别为().
int a,b;
a=1+'a';
b=2+7%-4-'A';
A:-63,-64
B:98,-60
C:1,-60
D:79,78
答案:B
第14题
在C语言中,char型数据在计算机中采用()方式编码.
A:补码
B:反码
C:原码
D:ASCII码
答案:D
第15题
在C语言中,要求运算数必须是整型的运算符是().
A:^
B:%
C:!
D:>
答案:B
第16题
C语言中要求对变量作强制定义的主要理由是().
A:便于移植
B:便于写文件
C:便于编辑预处理程序的处理
D:便于确定类型和分配空间
答案:D
第17题
设char型变量x中的值为10100111,则表达式(2+x)^(~3)的值是().
A、10101001
B、10101000
C、11111101
D、01010101
答案:D
第18题
若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是().
A:1
B:2
C:2.0
D:2.5
答案:C
第19题
执行下列程序后,其输出结果是().
main()
{int a=9;
a+=a-=a+a;
printf("%d\n",a);
}
A:18
B:9
C:-18
D:-9
答案:C
第20题
下列程序段的输出结果为().
float x=213.82631;
printf("%3d",(int)x);
A:213.82
B:213.83
C:213
D:3.8
答案:C
第21题
逻辑运算符两侧运算对象的数据类型().
A:只能是0或1
B:只能是0或非0正数
C:只能是整型或字符型数据
D:可以是任何类型的数据
答案:D
第22题
以下程序不用第三个变量,实现将两个数进行对调的操作,请填空().
#include<stdio.h>
main()
{ int a,b;
scanf("%d%d",&a,&b);
printf("a=%d b=%d",a,b);
a=a+b;b=a-b;a=_____;
printf("a=%d b=%d\n",a,b); }
A:a=b
B:a-b
C:b*a
D:a/b
答案:B
第23题
若a=1,b=2则 a|b的值是().
A:0
B:1
C:2
D:3
答案:D
第24题
假设所有变量均为整型,表达式:a=2,b=5,a>b?a++:b++,a+b的值是().
A:7
B:8
C:9
D:2
答案:B
第25题
用下列语句定义a,b,c,然后执行b=a、c='b'+b,则b,c的值是().
long a=0xffffff;
int b;
char c;
A:0ffffff 和0x61
B:-1和98
C:-1和97
D:指向同一地址
答案:C
第26题
下列运算符中是C语言关系运算符的是().
A:~
B:!
C:&
D:!=
答案:D
第27题
下面四个选项中,均是不合法的浮点数的选项是().
A:
160. 0.12 e3
B:
123 2e4.2 .e5
C:
-.18 123e4 0.0
D:
-e3 .234 1e3
答案:B
第28题
以下所列的C语言常量中,错误的是().
A:0xFF
B:1.2e0.5
C:2L
D:'\72'
答案:B
第29题
若有说明语句:char c='\72';则变量c().
A:包含1个字符
B:包含2个字符
C:包含3个字符
D:说明不合法,c的值不确定
答案:A
第30题
以下数据中,不正确的数值或字符常量是().
A:0
B:5L
C:o13
D:9861
答案:C
四、程序填空 共1题 (共计10分)
第1题
题目:下列程序从键盘输入所需数据,求出z的值并输出,要求输出结果保留2位小数。
#include <stdio.h>
【 ? 】
main()
{
int x;
double y, z;
scanf("【?】", &x, &y);
z = 2 * x * sqrt(y);
printf("z=【?】", z);
}
答案:
=======(答案1)=======
#include<math.h>
=========或=========
#include "math.h"
=======(答案2)=======
%d%f
=======(答案3)=======
%.2f
五、程序改错 共2题 (共计20分)
第1题
题目:列程序的功能为:已知圆锥半径r和高h,计算圆锥体积v。请纠正程序中存在错误,
使程序实现其功能。
#include <stdio.h>
main()
{
float r = 10, h = 5;
v = 1 / 3 * 3.14159 * r2 * h;
printf("v=%d\n", v);
}
答案:
=======(答案1)=======
double r=10,h=5,v;
=========或=========
float r=10,h=5,v;
=======(答案2)=======
v=1.0/3*3.14159*r*r*h;
=======(答案3)=======
printf("v=%f\n",v);
第2题
题目:下列程序的功能为:按下列公式计算并输出x的值。其中a和b的值由键盘输入。
请纠正程序中存在的错误,使程序实现其功能。公式: x=2ab/(a+b)^2(平方)
#include <stdio.h>
main()
{
int a, b;
double x;
scanf("%d,%d", a, b);
x = 2ab / (a+b)(a+b);
printf("x=%d\n", x);
}
答案:
=======(答案1)=======
scanf("%d,%d",&a,&b);
=======(答案2)=======
x=2.0*a*b/((a+b)*(a+b));
=======(答案3)=======
printf("x=%f\n",x);
六、程序设计 共1题 (共计15分)
第1题
题目:求华氏温度 150°F 对应的摄氏温度。计算公式:c = (5/9)*f-(5/9)*32,
式中:c表示摄氏温度,f表示华氏温度。
输入输出示例:
fahr = 150, celsius = 65
#include <stdio.h>
void main()
{
int celsius, fahr;
/**********Program**********/
/********** End **********/
printf("fahr = %d, celsius = %d\n", fahr, celsius);
}
答案:
fahr = 150;
celsius = 5 * fahr / 9 - 5 * 32 / 9;
若有错误或疑问,欢迎评论区留言讨论。