计算机二级《C语言》测试题及答案(精选5套)
在社会的各个领域,我们或多或少都会接触到试题,试题可以帮助学校或各主办方考察参试者某一方面的知识才能。什么样的试题才是科学规范的试题呢?下面是小编整理的计算机二级《C语言》测试题及答案,欢迎大家借鉴与参考,希望对大家有所帮助。

计算机二级《C语言》测试题及答案 1
1: 第1题请编写函数fun,其功能使:将两个两位正整数a b合并形成一个整数放在c中。合并的方式使:将a数的十位和个位数依次放在c数的百位和个位上,b数的十位和个位数依次放在c数的千位和十位上。
答案:
void fun(int a,int b,long *c)
{*c=(b/10)*1000+(a/10)*100+(b%10)*10+a%10;}
2: 第2题请编写一个函数fun,它的功能使:计算n门课程的平均分,计算结果作为函数值返回。
答案:
float fun(float *a,int n)
{float ave=0.0;
int i;
for(i=0;i
ave+=a;
ave/=n;
return ave;}
3: 第3题假定输入的`字符串中只包含字母和*号。请编写函数fun,它的功能使:将字符串尾部的*号全部删除,前面和中间的*号不删除。
答案:
void fun(char *a)
{int i=0;
char *p,*q;
p=q=a;
while(*p)
p++;
p--;
while(*p==‘*’)
p--;
while(q<=p)
{a=*q;
i++;
q++;}
a=‘’;}
4: 第4题请编写函数fun,其功能是:将两个两位数的正整数a b合并形成一个整数放在c中,合并的方式是:将a数的十位和个位数依次放在c的个位和百位上,b数的十位和个位数依次放在c数的千位和十位上。
答案:
void fun(int a,int b,long *c)
{c=(b/10)*1000+(a%10)*100+(b%10)*10+a/10;}
5: 第5题 n名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun,它的功能是:求出平均分,由函数值返回。
答案:
double fun(strec *h)
{double aver=0.0;
while(h!=null)
{aver+=h->s;
hy=h->next;}
aver/=n;
return aver;}
6: 第6题请编写函数fun,计算并输出给定10个数的方差。
答案:
double fun(double x[10])
{int i,j;
double s=0.0,s1=0.0;
for(i=0;i<10;i++)
s1+=x;
s1/=10;
for(j=0;j<10;j++)
s+=(x[j]-s1)*(x[j]-s1);
s/=10;
s=pow(s,0.5);
return s;}
7: 第7题请编写函数fun,其功能是:将两个两位数的正整数a b合并形成一个整数放在c 中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的个位和百位上。
答案:
void fun(int a,int b,long *c)
{*c=(a/10)*1000+(a%10)*10+(b%10)*100+b/10;}
计算机二级《C语言》测试题及答案 2
1、 一个教师讲授多门课程,一门课程由多个教师讲
授。则实体教师与课程关系 B
A) 1:m 联系
B) m: n 联系
C) m: 1联系
D) 1:1联系
2、 结构化程序所要求的基本结构不包括 B
A) 重复(循环)结构 B) GOTO跳转
C) 选择(分支)结构 D) 顺序结构
3、 下列叙述中正确的是 C
A) 在栈中,栈中元素随栈底指针与栈顶指针的变化而
动态变化
B) 在栈中,栈顶指针不变,栈中元素随栈底指针的变
化而动态变化
C) 在栈中,栈底指针不变,栈中的元素随栈顶指针的
变化而动态变化
4、 定义无符号整数类为Uint,下面可以作为unit实例
化的值是 C
A) 0.369
B) 整数集合{1,2,3,4,5}
C) 369
D) -369
5、 下面描述中错误的'是(D)
A) 软件设计是将软件需求转换为软件表示的过程
B) PAD图是软件详细设计的表示工具
C) 数据结构与数据库设计是软件设计的任务之一
D) 系统总体结构图支持软件系统的详细设计
6、软件按功能可以分为应用软件、系统软件和支撑软件,下面的软件中是应用软件的是 C
A) 数据库管理系统
B) UNIX操作系统
C) 学生成绩管理系统
D) C语言编译程序
7、下列关于栈叙述正确的是 C
A) 栈顶元素最后才能被删除
B) 栈底元素永远不能被删除
C) 栈顶元素最先能被删除
8、软件生命周期中的活动不包括 A
A) 市场调研 B) 软件测试
C) 软件维护 D) 需求分析
9、下列叙述中正确的是 D
A) 有一个以上根结点的数据结构不一定是非线性结构
B) 双向链表是非线性结构
C) 循环链表是非线性结构
D) 只有一个根结点的数据结构不一定是线性结构
10、下列关于数据库设计中的叙述中,正确的是 A
A) 在需求分析阶段建立数据字典
B) 在物理设计阶段建立数据字典
C)在逻辑设计阶段建立数据字典
D) 在概念设计阶段建立数据字典
11、下列叙述中正确的是 D
A) 设计算法时只需要考虑结果的可靠性
B) B)算法就是程序
C) 设计算法时只需要考虑数据结构的设计
D) D)以上三种说法都不对
12、程序调试的任务是 A
A) 诊断和改正程序中的错误
B)设计测试用例
C) 验证程序的正确性
D) 发现程序中的错误
13、下列关于二叉树的叙述中,正确是 C
A) 叶子结点是度为2的结点数的两倍
B) 度为2的结点数是度为1的结点数的两倍
C) 叶子结点总是比度为2的结点多一个
D) 叶子结点总是比度为2的结点少一个
14、数据库系统的三级模式不包括 B
A) 概念模式 B) 数据模式 C) 内模式 D) 外模式
计算机二级《C语言》测试题及答案 3
(1) 以下选项中,合法的数值型常量是
A) 3.2 B) X C) 099 D) 0xEH
答案:A
(2) 以下选项中,合法的实数是
A) 1.5E2 B) E1.1 C) 2.10E D) 1.9E1.4
答案:A
(3) 若已有定义语句:int a, b, c;,且变量已正确赋初值,则以下选项中正确的赋值表达式是
A) a = (b = c) + 8;
B) (a = b) = c = 9;
C) a = (b == c) = A;
D) a + b = c + 1;
答案:A
(4) 有以下程序
#include
main()
{
int x = 0x13;
printf("INT:%d ", x+1);
}
程序运行后的输出结果是
A) INT:20 B) INT:13
C) INT:12 D) INT:14
答案:A
(5) 关于程序设计基本概念,以下叙述错误的是
A) 计算机可以直接执行由任意高级语言编写的程序
B) 高级语言都有与之对应的编译程序或解释程序
C) 用任何一种计算机高级语言都可以把算法转换为程序
D) 结构化算法可以解决任何复杂的问题
答案:A
(6) 关于程序中的注释,以下叙述正确的是
A) 注释的内容必须放在一对/*和 */之间
B) 注释必须置于所说明的语句前或语句后
C) 注释中间可以嵌套另一个注释
D) 注释内容错误会导致编译出错
答案:A
(7) 以下不能用于实型数据的.运算符是
A) % B) /
C) * D) +
答案:A
(8) C源程序中不能表示的数制是
A) 二进制 B) 八进制
C) 十进制 D) 十六进制
答案:A
(9) 以下选项中,能用作用户标识符的是
A) _0_ B) 8_8
C) void D) unsigned
答案:A
(10) 若有定义语句:
int x=10;
则表达式x-=x+x的值为
A) -10 B) -20
C) 0 D) 10
答案:A
(11) 有以下程序
#include
main()
{ int a=1,b=0;
printf("%d,",b=a+b);
printf("%d ",a=2*b);
}
程序运行后的输出结果是
A) 1,2 B) 1,0
C) 3,2 D) 0,0
答案:A
(12) 以下关于结构化程序设计的叙述中正确的是
A) 在C语言中,程序的模块化是利用函数实现的
B) 结构化程序使用goto语句会很便捷
C) 一个结构化程序必须同时由顺序、分支、循环三种结构组成
D) 由三种基本结构构成的程序只能解决小规模的问题
答案:A
(13) 对于一个正常运行的C程序,以下叙述中正确的是
A) 程序的执行总是从main函数开始 B) 程序的执行总是从程序的第一个函数开始, 在main函数结束
C) 程序的执行总是从main函数开始,在程序的最后一个函数中结束
D) 程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束
答案:A
(14) 以下选项中能表示合法常量的是
A) "07" B) 1.5E2.0
C) D) 1,200
答案:A
(15) 以下定义语句中正确的是
A) char A=65+1,b=b; B) int a=b=0;
C) float a=1,*b=&a,*c=&b; D) double a=0.0; b=1.1;
答案:A
(16) 若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是
A) ++x,y=x-- B) x+1=y
C) x=x+10=x+y D) double(x)/10
答案:A
(17) 若变量已正确定义为int型,要通过语句
scanf("%d,%d,%d",&a,&b,&c);
给a赋值1、给b赋值2、给 c赋值3,以下输入形式中错误的是(注:□代表一个空格符)
A) 1□2□3<回车> B) □□□1,2,3 <回车>
C) 1,□□□2,□□□3<回车> D) 1,2,3<回车>
答案:A
(18) 计算机能直接执行的程序是
A) 可执行程序 B) 目标程序
C) 汇编程序 D) 源程序
答案:A
(19) 以下叙述中正确的是
A) C语言规定必须用main作为主函数名,程序将从此开始执行。
B) 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行。
C) C语言程序将从源程序中第一个函数开始执行。
D) main的各种大小写拼写形式都可以作为主函数名,如:MAIN,Main等
答案:A
(20) 以下选项中可用作C程序合法实数的是
A) .1e0 B) 3.0e0.2
C) E9 D) 9.12E
答案:A
(21) 下列定义变量的语句中错误的是
A) float US$; B) double int_;
C) char For; D) int _int;
答案:A
(22) 表达式:(int)((double)9/2)- 9%2 的值是
A) 3 B) 0 C) 4 D) 5
答案:A
(23) 若有定义:
int a,b;
通过语句
scanf("%d;%d",&a,&b);
能把整数3赋给变量a,5赋给变量b的输入数据是
A) 3;5 B) 3,5 C) 3 5 D) 35
答案:A
(24) 下列叙述中错误的是
A) 一个C语言程序只能实现一种算法 B) C程序可以由多个程序文件组成
C) C程序可以由一个或多个函数组成 D) 一个C函数可以单独作为一个C程序文件存在
答案:A
(25) C语言源程序名的后缀是
A) .C B) .exe C) .obj D) .cp
答案:A
(26) 以下叙述中正确的是
A) 赋值语句是一种执行语句,必须放在函数的可执行部分
B) scanf和printf是C语言提供的输入和输出语句
C) 由printf输出的数据都隐含左对齐 D) 由printf输出的数据的实际精度是由格式控制中的域宽和小数的域宽来完全决定的
答案:A
计算机二级《C语言》测试题及答案 4
(1)在现实中,一般我们一般将计算机分类为
A)服务器、工作站、台式机、笔记本、掌上电脑
B)大型机、小型机、个人计算机、工作站、巨型计算机
C)服务器、工作站、台式机、笔记本
D)服务器/工作站、台式机、笔记本、掌上电脑,大型机、小型机
答案A
(2)MIPS常用来描述计算机的运算速度,其含义是
A)每秒钟处理百万个字符
B)每分钟处理百万个字符
C)每秒钟执行百万条指令
D)每分钟执行百万条指令
答案C
(3)下面不属于网卡功能的是
A)实现与主机总线的通信连接
B)实现数据链路层的功能
C)实现物理层的功能
D)实现调制和解调功能
答案D
(4)McAfeeAssociatesVirusScan是____软件
A)文档管理软件
B)传真软件
C)群件软件
D)病毒防治软件
答案D
(5)计算机*作系统中,若P、V*作的信号量S初值为2,当前值为-1,则表示有____个等待进程。
A)0个
B)1个
C)2个
D)3个
答案B
(6)NetWare操作系统提供三级容错机制。第三级系统容错(SFTIII)提供了
A)文件服务器镜像
B)热修复与写后读验证
C)双重目录与文件分配表
D)硬盘镜像与硬盘双工
答案A
(7)当通过电话线连接到ISP时,因为电话线路输出信号为____信号,计算技术出信号只能通过调制解调器同电话网连接。
A)数字
B)模拟
C)音频
D)模拟数字
答案C
(8)SNMP位于ISOOSI参考模型的
A)应用层
B)数据链路层
C)对话层
D)网络层
答案A
(9)SDH帧结构由横向270×N列和纵向9行8字节组成。每秒钟传送8000帧,则STM-1每秒钟的传送速率为
A)155.52Mbps
B)311.04Mbps
C)77.76Mbps
D)311.04Mbps
答案A
(10)我们将目前网络存在的威胁分为两类:渗入威胁和植入威胁,下面属于渗入威胁的有Ⅰ假冒
Ⅱ旁路控制Ⅲ特罗伊木马Ⅳ陷门
A)Ⅰ、Ⅱ
B)Ⅲ、Ⅳ
C)Ⅰ、Ⅳ
D)Ⅰ、Ⅱ、Ⅲ、Ⅳ
答案A
(11)____是指让作业不同时调用的子模块共同使用同一个内存区。
A)交换技术
B)覆盖技术
C)物理扩充
D)虚拟扩充技术
答案B
(12)____存储管理方式提供二维地址结构。
A)固定分区
B)分页
C)分段
D)可变分区
答案C
(13)中断及中断处理是计算机系统的重要功能,下述各项可能成为中断源的是____。Ⅰ.输入、输出设备Ⅱ.数据通道
Ⅲ.时钟Ⅳ.软件
A)Ⅰ
B)Ⅰ和Ⅱ
C)Ⅰ、Ⅱ和Ⅲ
D)Ⅰ、Ⅱ、Ⅲ、Ⅳ
答案D
(14)当前目录是用户当前工作的目录,下列关于当前目录的叙述中正确的是Ⅰ在当前目录下,可以采用相对路径名查找文件Ⅱ当前目录放在内存Ⅲ每个用户有一个当前目录Ⅳ当前目录可以改变
A)Ⅰ、Ⅱ
B)Ⅰ、Ⅱ、Ⅲ
C)Ⅰ、Ⅱ、Ⅳ
D)Ⅰ、Ⅱ、Ⅲ、Ⅳ
答案D
(15)计算机网络能够不受地理上的束缚实现资源共享,下列不属于共享的.资源是____。
A)数据
B)办公人员
C)软件
D)硬件
答案B
(16)在____中,用户一般不直接操纵计算机,而是将作业提交给系统操作员。由操作员将作业成批装入计算机,然后由操作系统按照一定的原则执行作业,并输出结果。最后由操作员将作业运行结果交给用户。
A)批处理操作系统
B)分时系统
C)实时系统
D)网络操作系统
答案A
(17)虚拟页式存储管理系统中,页标由若干项目组成,下列项目中,可以不属于页表表项的是
A)页号
B)内存块号
C)中断位
D)修改位
答案A
(18)在开放系统互连参考模型OSI中,传输的比特流划分为帧的是____。
A)数据链路层
B)网络层
C)传输层
D)会话层
答案A
(19)一个进程和另一个进程通信时,需要以某种方式标识自己,TCP/IP用端口的`逻辑结构来表示。关于端口的陈述错误的是 ____。
A)0到1024的端口号是公用约定的
B)可以自己指定FTP的端为5000
C)多个FTP进程在本机端口号是不一样的
D)端口是保证多少的重要技术
答案A
(20)IEEE802.3的物理层协议10BASE-T规定从网卡到集线器的最大距离为____。
A)100m
B)185m
C)500m
D)850m
答案A
计算机二级《C语言》测试题及答案 5
1.(A )是构成C语言程序的基本单位。
A、函数
B、过程
C、子程序
D、子例程
2.C语言程序从 C 开始执行。
A、 程序中第一条可执行语句
B、 程序中第一个函数
C、 程序中的main函数
D、包含文件中的第一个函数
3、以下说法中正确的是( C )。
A、C语言程序总是从第一个定义的函数开始执行
B、在C语言程序中,要调用的函数必须在main( )函数中定义
C、C语言程序总是从main( )函数开始执行。
D、C语言程序中的main( )函数必须放在程序的开始部分
4.下列关于C语言的说法错误的是( B ) 。
A、 C程序的工作过程是编辑、编译、连接、运行
B、 C语言不区分大小写。
C、 C程序的三种基本结构是顺序、选择、循环
D、C程序从main函数开始执行
5.下列正确的标识符是(C )。
A、-a1
B、a[i]
C、a2_i
D、int t
5~8题为相同类型题
考点:标识符的命名规则
只能由字母、数字、下划线构成
数字不能作为标识符的开头
关键字不能作为标识符
选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)
6.下列C语言用户标识符中合法的是(B )。
A、3ax
B、x
C、case
D、-e2 E)union
选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);
7.下列四组选项中,正确的C语言标识符是( C )。
A、 %x
B、a+b
C、a123
D、123
选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)
8、下列四组字符串中都可以用作C语言程序中的标识符的是( A)。
A、print _3d db8 aBc
B、I\am one_half start$it 3pai
C、str_1 Cpp pow while
D、Pxq My->book line# His.age
选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3)
9.C语言中的简单数据类型包括(D )。
A、整型、实型、逻辑型
B、整型、实型、逻辑型、字符型
C、整型、字符型、逻辑型
D、整型、实型、字符型
10.在C语言程序中,表达式5%2的结果是 C 。
A、2.5
B、2
C、1
D、3
%为求余运算符,该运算符只能对整型数据进行运算。且符号与被模数相同。5%2=1; 5%(-2)=1;(-5)%2=-1;(-5)%(-2)=-1;
/为求商运算符,该运算符能够对整型、字符、浮点等类型的数据进行运算,5/2=2
11.如果int a=3,b=4;则条件表达式"aA、 3
B、 4
C、 0
D、1
详见教材P97.
表达式1?表达式2:表达式3
先计算表达式1,
若表达式1成立, 则选择计算表达式2,并表达式2的值作为整个大表达式的值;
若表达式1不成立,则选择计算表达式3,并将表达式3的值作为整个大表达式的值
此题中的aa为3,b为4。a12.若int x=2,y=3,z=4 则表达式x
A、4
B、3
C、2
D、0
E)1
13.C语言中,关系表达式和逻辑表达式的值是( B ) 。
A、0
B、 0或1
C、 1
D、‘T’或’F’
14. 下面( D )表达式的值为4.
A、 11/3
B、 11.0/3
C、 (float)11/3
D、 (int)(11.0/3+0.5)
14~16题为同一类型
详见教材P54~56.
(1)相同数据类型的元素进行数学运算(+、-、*、/)得到结果还保持原数据类型。
(2)不同数据类型的元素进行数学运算,先要统一数据类型,统一的标准是低精度类型转换为高精度的数据类型。
选项A,11与3为两个整数,11/3结果的数据类型也应为整数,因此将3.666666的小数部分全部舍掉,仅保留整数,因此11/3=3.
选项B,11.0为实数,3为整数,因此首先要统一数据类型,将整型数据3转换为3.0,转换后数据类型统一为实型数据,选项B变为11.0/3.0,结果的数据类型也应为实型数据,因此选项B 11.0/3=3.666666
选项C,先将整数11强制类型转换,转换为实型11.0,因此选项C变为11.0/3,其后计算过程、结果与选项B同
选项D,首先计算11.0/3,其计算过程、结果与选项B同,得到3.666666;再计算3.666666+0.5=4.166666,最后将4.166666强制类型转换为整型,即将其小数部分全部舍掉,结果为4
15.设整型变量 a=2,则执行下列语句后,浮点型变量b的值不为0.5的是( B )
A、b=1.0/a
B、b=(float)(1/A、
C、b=1/(float)a
D、b=1/(a*1.0)
16. 若“int n; float f=13.8;”,则执行“n=(int)f%3”后,n的值是(A)
A、1
B、4
C、4.333333
D、4.6
“(int)f“表示将f中的值强制类型转换为整型,即将13.8的.小数部分舍掉,转换为13;然后计算13%3,结果为1,再将结果赋给变量n,因此n的值为1
17. 以下对一维数组a的正确说明是: D
A、char a(10);
B、 int a[];
C、int k=5,a[k];
D、char a[3]={‘a’,’b’,’c’};
详见教材P143~144,一维数组的定义、初始化
类型符 数组名 [常量表达式]
类型符是指数组中数组元素的类型;数组名要符合标识符命名规则;常量表达式是指数组的长度(数组中包含元素的个数),其值只能是整数,不可以是变量,而且从1开始计数。
选项A,常量表达式只能放在中括号 [ ]中
选项B,只有在对数组初始化(即赋值)的时候才可以省略数组的长度,B中并未对a进行初始化。
选项C,常量表达式不能为变量。
18.以下能对一维数组a进行初始化的语句是:( C )
A、int a[5]=(0,1,2,3,4,)
B、 inta(5)={}
C、 int a[3]={0,1,2}
D、 int a{5}={10*1}
详见教材P145,一维数组的定义、初始化
选项B,D,常量表达式只能放在中括号 [ ]中
选项A,数组可以看做是若干个相同数据类型元素的有序集合,因此以集合的形式对其初始化,使用{ }对其初始化,选项A用了().
19.在C语言中对一维整型数组的正确定义为 D 。
A、int a(10);
B、int n=10,a[n];
C、int n;a[n];
D、#define N 10
int a[N];
20、已知:int a[10]; 则对a数组元素的正确引用是( D )。
A、a[10]
B、a[3.5]
C、a(5)
D、a[0]
详见教材P144,数组元素的引用
数组名[下标]
引用数组元素时,[ ]中的下标为逻辑地址下标,只能为整数,可以为变量,且从0开始计数
int a[10]表示定义了一个包含10个整型数据的数组a,数组元素的逻辑地址下标范围为0~9,即a[0] 表示组中第1个元素; a[1] 表示组中第2个元素; a[2] 表示组中第3个元素; ......;a[9] 表示组中第10个元素.
选项A,超过了数组a的逻辑地址下标范围;
选项B,逻辑地址下标只能为整数
选项C,逻辑地址下标只能放在[ ]中
【计算机二级《C语言》测试题及答案】相关文章:
计算机二级C语言测试题及答案08-13
计算机二级C语言测试题与答案09-16
2017计算机二级C语言测试题及答案08-09
计算机二级C语言测试题含答案08-17
计算机二级C语言预测试题及答案10-30
计算机二级C语言测试题及答案解析07-11
计算机二级《C语言》预测试题及答案06-10
2023计算机二级C语言测试题及答案10-23
计算机二级C语言测试题及答案201610-09
计算机二级C语言的测试题及答案解析08-25