1. 首页 > 科技快讯 >

二级计算机c语言题库_二级计算机c语言题库及答案

计算机二级C语言操作题积累

2017年计算机二级C语言操作题积累

二级计算机c语言题库_二级计算机c语言题库及答案二级计算机c语言题库_二级计算机c语言题库及答案


多媒体计算机是当前计算机领域中引人注目的高新技术之一。多媒体计算机就是利用计算机技术、通信技术和大众传播技术,来综合处理多种媒体信息的计算机。下面是我整理的关于计算机二级C语言操作题积累,欢迎大家参考!

一、单选题(每小题1分,共40分)

1[单选题] 下列关于综合布线系统的描述中,错误的是()。

A.双绞线扭绞可以减少电磁干扰

B.管理子系统设置在楼层配线间内

C.多介质插座是用来连接铜缆和光纤的

D.对于建筑群子系统直埋布线是理想的方式

2[单选题] IP地址块59.67.79.128/28、59.67.79.144/28和59.67.79.160/27经聚合后可用地址数为()。

A.62

B.64

C.126

D.128

3[单选题] IP地址块202.111.15.128/28、202.111.15.144/28和202.111.15.160/28经过聚合后可用的地址数为()。

A.40

B.42

C.44

D.46

4[单选题] 下列攻击手段中,基于网络的入侵防护系统无法阻断的是()。

A.SYNFlooding

B.SQL注入

C.DDOS

D.PingofDeath

5[单选题] 异备份、增量备份、完全备份三种备份策略的备份速度由快到慢依次为()。

A.增量备份、异备份、完全备份

B.异备份、增量备份、完全备份

C.完全备份、异备份、增量备份

D.完全备份、增量备份、异备份

6[单选题] CiscoPIX525防火墙用来允许数据流从具有较低安全级接口流向较高安全级接口的配置命令是()。

A.fixup

B.conduit

C.global

D.nameif

7[单选题] 在Windows2003系统下DHCP服务器中添加排除时,应输入的信息是()。

A.起始IP地址和结束IP地址

B.起始IP地址和地址

C.起始IP地址和MAC地址

D.起始IP地址和掩码

8[单选题] 下列关于服务器技术的描述中,错误的是()。

A.集群系统中一台主机出现故障时不会影响系统的性能

B.采用RISC结构处理器的服务器通常使用UNIX系统

C.热插拔功能允许用户在不切断电源的情况下更换硬盘、电源等

D.分布式内存访问(NUMA.技术将对称多处理器(SMP)和集群(Cluster)技术结合起来

9[单选题] 下列对交换机中交换表的描述中,错误的是()。

A.在一些高端交换机中,交换表通常被保存在CAM存储器中

B.交换表中没有接收帧的目的MAC地址时,交换机用Flood技术转发该帧

C.使用“showmac-addres-table”命令可显示小型交换机的交换表内容

D.交换表的内容包括目的IP地址及其所对应的交换机端口号

10[单选题] 下列关于无线网络HipeR1AN/2协议的描述中,错误的.是()。

A.采用5GHz工作频段

B.上行速率多可达54Mbps

C.室外覆盖范围为30米

D.可支持面向连接的传输服务

二、综合题(每空2分,共40分)

(1)打开工作簿文件EXCEL.xlsx,将工作表sheetl的Al:El单元格合并为一个单元格,内容水平居中,计算“合计”列的内容,将工作表命名为“科研经费使用情况表”.

(2)选取“科研经费使用情况表”的“项目编号”列和“合计”列的单元格内容,建立“簇状棱锥图”,x轴上的项为项目编号,图表标题为“科研经费使用情况图”,插入到表的A7:El8单元格区域内.

三、演示文稿题

打开考生文件夹下的演示文稿yswg.pptx,按照下列要求完成对此文稿的修饰并保存.

(1)整个演示文稿设置成“时装设计”模板;将全部幻灯片切换效果设置成“分割”.

(2)将第二张幻灯片对象部分的动画效果设置为“向内溶解”;在演示文稿的开始处插入一张“标题幻灯片”,作为文稿的第一张幻灯片,主标题键人“讽刺与幽默”,并设置为60磅、加粗、红色(请用自定义标签中的红色250,绿色1,蓝色1).

二、电子表格题

(1)【解题步骤】

步骤1:通过“答题”菜单打开EXCEL.xlsx文件,选中A1:E1单元格,在【开始】功能区的【对齐方式】分组中,单击“合并后居中”按钮,合并单元格并使内容居中。

步骤2:计算“合计”列内容。在E3单元格中插入公式“=SUM(B3:D3)”,并按回车键,将鼠标移动到E3单元格的右下角,按住鼠标左键不放向下拖动即可计算出其他行的值。

注:当鼠标指针放在已插入公式的单元格的右下角时,它会变为小十字“+”,按住鼠标左键拖动其到相应的单元格即可进行数据的自动填充。

步骤3:双击现有名称,输入新名称“科研经费使用情况表”。

步骤4:保存文件。

(2)【解题步骤】

步骤1:按照要求建立“簇状棱锥图”。选中“项目编号”列和“合计”列,在【插入】功能区的【图表】分组中,单击“创建图表”按钮,弹出“插入图表”对话框,在“柱形图”中选择“簇状棱锥图”,单击“确定”按钮,即可插入图表。

步骤2:按照题目要求设置图表标题。在插入的图表中,选中图表标题,改为“科研经费使用情况图”。

步骤3:调整图的大小并移动到指定位置。选中图表,按住鼠标左键单击图表不放并拖动,将其拖动到A7:El8单元格区域内。

注:不要超过这个区域。如果图表过大,无法放下,可以将鼠标放在图表的右下角,当鼠标指针变为“、”时。按住左键拖动可以将图表缩小到指定区域内。

步骤4:保存文件。

三、演示文稿题

(1)【解题步骤】

步骤1:通过“答题”菜单打开ysw9.pptx文件,按照题目要求设置幻灯片模板。选中幻灯片,在【设计】功能区的【主题】分组中,单击“其他”下拉三角按钮,选择“时装设计”模板。

步骤2:按照题目要求设置幻灯片的切换效果。选中幻灯片,在【切换】功能区的【切换到此幻灯片】分组中,单击“其他”下拉三角按钮,在“细微型”选项组中选择“分割”效果。

(2)【解题步骤】

步骤1:按照题目要求设置剪贴画的动画效果。选中第二张幻灯片的图片,在【动画】功能区的【动画】分组中,单击“其他”下拉三角按钮,选择“更多进入效果”选项,弹出“更改进入效果”对话框。在“基本型”选项组中选择“向内溶解”效果,单击“确定”按钮。

步骤2:按照要求插入新幻灯片。用鼠标右键单击第一张幻灯片前面的位置,在【开始】功能区的【幻灯片】分组中,单击“新建幻灯片”下拉三角按钮,选择“标题幻灯片”选项。新插入的幻灯片作为第一张幻灯片。

步骤3:在第一张幻灯片的“单击此处添加标题”处输入“讽刺与幽默”。

步骤4:按题目要求设置字体。选中“讽刺与幽默”,在【开始】功能区的【字体】分组中,单击“字体”按钮,弹出“字体”对话框。在“字体”选项卡中,设置“大小”为“60磅”,设置“字体样式”为“加粗”。单击“字体颜色”下拉三角按钮,选择“其他颜色”选项,弹出“颜色”对话框。单击“自定义”选项卡,设置“红色”为“250”,设置“绿色”为…l’,设置“蓝色”为…l’,单击“确定”按钮,再单击“确定”按钮。

步骤5:保存文件。

三、应用题(共20分) ;

计算机等级二级C语言模拟试题1(十)

一、选择题(1)~(10)每小题2分,(11)-(50)每小题1分,共60分)

下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)算法能正确地实现预定功能的特性称为算法的__________。

A)确定性B)易读性C)健壮性D)高效性

答案:A

评析:算法的确定性是指算法中的每一个步骤都必须是有明确定义的,不允许有摸棱两可的解释,也不允许有多义性,即每个步骤都是预先定义好的。

(2)数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称之为__________。

A)存储结构B)逻辑结构

C)顺序存储结构D)链式存储结构

答案:C

评析:如果数据之间在逻辑上有相邻关系时,能够在物理位置上体现出来,则这种存储结构称为顺序存储结构。如果数据之间的逻辑相邻关系在存储时是靠存储地址的指针来体现的,则称为链式存储结构。

(3)从未排序序列中依次取出一个元素与已排序序列中的元素依次进行比较,然后将其放 在已排序序列的合适位置,该排序方法称为__________。

A)希尔排序B)冒泡排序C)插入排序D)选择排序

答案:C

评析:基本的排序方法有三大类,即选择排序、交换排序和插入排序。

(4)对线性表进行折半查找时,要求线性表必须__________。

A)以顺序方式存储

B)以链接方式存储

C)以顺序方式存储,且结点按关键字有序排列

D)以链接方式存储,且结点按关键字有序排列

答案:C

评析:折半查找算法要求被查找的对象必须采用顺序的存储结构,并且关键字有序排列。

(5)链表不具备的特点是__________。

A)可随机访问任意一个结点

B)插入和删除不需要移动任何元素

C)不必事先估计存储空间

D)所需空间与其长度成正比

答案:A

评析:顺序表可以随机访问任意一个结点,而链表必须从第一个数据结点出发,逐一查找每个结点。

(6)下列描述中正确的是__________。

A)软件是物理产品

B)程序就是软件

C)软件工程由方法、工具和过程三部分组成

D)软件工程是一个机械工程

答案:B

评析:软件是与计算机系统操作有关的程序、规程、规则及任何与之有关的文档和数据。计算机软件是一种逻辑产品,而不是物理产品。软件工程是用工程、科学和数学的原则与方法研制、维护计算机软件的有关技术及管理方法。软件工具可以自动或半自动的生成软件文档。软件工程过程是管理者控制软件开发各环节的基本方法。

(7)软件测试是保证软件质量关键的步骤,下列关于白盒测试技术描述中不正确的是_______。

A)保证模块中每一独立的路径至少执行一次

B)保证所有判断的每一分支至少执行一次

C)保证每一循环都在边界条件和一般条件下多执行一次

D)验证所有内部数据结构的有效性

答案:C

评析:软件测试技术中,白盒测试技术和黑盒测试技术是两种基本的软件测试手段。白盒测试技术有四个原则:保证模块中每一个独立的路径至少执行一次;保证所有判断的每一分支至少执行一次;保证每一循环都在边界条件和一般条件下至少执行一次;验证所有内部数据结构的有效性。

(8)客观世界中任何一个事物都可以看成一个对象。但是从计算机的角度看,一个对象应该包含两个要素:一个是_______,另一个是需要进行的操作。

A)语句B)命令C)算法D)数据

答案:D

评析:在面向对象的程序 设计 中,从计算机的角度看,一个对象应该包含两个元素:数据,相当于家庭中的成员;操作,相当于家庭成员的活动。对象就是一个包含数据与这些数据有关的操作的。

(9)下列概念中,不是数据库管理系统必须提供的数据控制功能的是_______。

A)安全性B)完整性C)移植性D)一致性

答案:C

评析:数据库管理系统提供的数据控制功能是指在数据库建立、运行和维护时,由DBMS统一管理、统一控制,以保证数据的安全性、完整性和一致性。

(10)设关系R和关系S的元数分别是3和4,关系T是R和S的笛卡儿积,即T=R×S,则关系T的元数是_______。

A)7B)9C)12D)16

答案:A

评析:笛卡儿积的定义是设关系R和s的元数分别是r和s,R和s的笛卡儿积是一个(r十s)元属性的,每一个元组的mr个分量来自R的一个元组,、后s爪分量来自s的一个元组。所以关系T的属性元数是3+4=7。

(11)以下叙述中正确的是_______。

A)C语言中的全部数据类型都是基本类型

B)C语言中的全部数据类型都是构造类型

C)C语言中的数据类型只有两种,即基本类型和构造类型

D)以上都不对

答案:D

评析:c语言中的数据类型有四种,即基本类型、构造类型、指针类型和空类型。

(12)下列可作为C语言赋值语句的是_______。

A)x=3,y=5B)a=b=6C)i--; D)y=6

答案:C

评析:此题实际上是考查对c语言中"语句"概念的理解。表达式后面只有加上分号才能成为语句,因此,A),B),D)均是表达式,只有C)为语句。且利用自减运算符使i值减l。

(13)以下可以定义为用户标识符的是_______。

A)printfB)netC)3com D)int

答案:B

评析:c语言中的标识符分为两类。一类是系统标识符,即系统定义使用的关键字标识符等。另一类是用户自定义标识符。两类标识符都只能用字母、数字和下划线三种字符组成。且第一个字母必须为字母或下划线。并且用户自定义标识符不能使用系统关键字相同的标识符。

(14)以下选项中,不能作为合法常量的是_______。

A)0X2AB)015C).2.8e9D)123.6e0.4

答案:D

评析:c程序中的基本数据类型有整型、实型和字符型。其中整型常量三种形式,即八进制、十进制和十六进制。而实型常量有十进制小数和指数形式两种。

(15)有以下程序

main()

{

int a;char c=10:

float f=-100.0;double x;

clrscrO;

a=f/=c=(x=6.5);

printf("%d,%c,%3.1C%3.1f\n",a,c,Cx);

}

程序运行后的输出结果是_______。

A)1,65,1,6.5B)1,A,1.5,6.5C)1,65,1.5,6.5D)2,65,1.5,6.5

答案:B

评析:在赋值语句a=f/=c=(x=6.5);中,可得x=6.5,将x的值乘以10赋予c,为65,再将f=100的值除以65,并按照四舍五入的原则,重新赋给f'得到f=-I.5。后将f的值赋给a,由于a是整型,所以得到a=l。

(16)以下语句序列中错误的是_______。

A)int x=l;B)int x=0;C)int x=2.3; D)int x=l,y=l;

x++;(x+1)++;(x++)+1;(x++)+(y一);

答案:B

评析:c语言中的自加、自减运算只能用于变量,而不能用于常量或表达式。 (17)有定义语句:im.a;charb[10],c;则错误的输入语句是__________。

A)scanf("%d%s%c",&a,D,&C);B)scanf("%d%s%c",&a,&b,&C);

C)scanf("%d%s%d",&a;b,&C); D)scanf("%d%s"&c,a,%,&C);

答案:D

评析:在scanf()语句中,在给整型变量和字符型赋值时,必须要在变量名前加取地址符号(&),而对字符型数组赋值时,可以不在变量名前不加取地址符号,也可以加取地址符号。而且对于字符型变量既可以赋给整型值,也可以赋给字符型值。

(18)有定义语句:int x,y;,若要通过scan即x=%d,y=%n&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,正确的是________。

A)1l12回车> B)ll,12回车>

C)x=l l,y=12回车>D)x=ll,回车>12,回车>

答案:C

评析:在scanf()语句中,对于变量的赋值必须与数据的输入格式相一致。特别是一些字符说明。

(19)设有如下程序段:

int x=6,y=4;

printf("%d\n",(x%y,x&&y));

则以下叙述中正确的是__________。

A)输出语句中格式说明符的个数少于输出项的个数,不能正确输出

B)运行时产生出错信息

C)输出值为2

D)输出值为l

答案:D

评析:在逗号表达式(表达式1,表达式2)中,其运算方法是先求表达式1的值,然后求表达2的值,整个逗号表达式的值是表达式2的值。

(20)有以下程序

main()

{

inti=1.j=2,k=3;

clrscr();

if(i++==j&&k--==j)

printf("%d,%d,%d",i++'j,k);

else

printf("%d,%d,%d",++i,++j,k--);

}

程序运行后的输出结果是_________。

A)l,2,3B)2,2,3C)2,3,2D)3,3,3

答案:D

评析:按照运算符的优先级,计算的是关系运算i++==j,由于此关系式不成立,,它的结果是为"假"值,由此可以确定逻辑与运算的结果必然是"假"值,因此参加逻辑与运算的另一个关系表达式"k--==j"的值,系统不再对它进行运算。此时变量i的值自加1变成2,然后执行else语句后的printf语句。

(21)有定义语句:int a=l,b=l,c=3,x;,则以下选项中各程序段执行后,x的值不等于3是__________。

A)if(ca)x=3;D)if(a

评析:在各种运算符中,运算级别的是算术运算,如果有括号,当然先算括号内的表达式的值。

(22)有以下程序,其输出结果是____________。

main()

{ float x=l;int y;

X++:

y=x+l;

printf("x=%d,y=%f",x,y);

}

A)x=2,y=3 B)x=2,y=3.0

C)x=2.0,y=3D)x=0.y=O.000000

答案:D

评析:一般在对变量定义为何种类型的数据时,对输出应有完全一致的数据类型格式。但整型与实型数据在进行混合运算时,一般其数据类型可以自动转换。如本题的y=x+l;语句中,系统自动将实型表达式x+l的结果转换为整数赋给整型变量y,但整型变量y只能得到实型数的整数部分。

(23)有以下程序

main()

{

int a[6]={5,6,7,8,9,10},s=0,I=0;

clrserO;

do

{

if(a[i]%2 I-0)

s+=a[I];

}while(++i<5);

primf("%d\n",s);

}

程序运行后的输出结果是_________。

A)21B)22C)23D)24

答案:A

评析:引用数组中的某个元素时,可以直接使用数组名加下标的形式。如p[1],就是数组中下标为1的元素,按顺序数,是第2个元素,因为数组的下标是从0开始的。本题实际上是求数组中所有奇数元素的和。

(24)若有如下程序段,

main()

{

char a[7]="123\010\032";

inti,j=0;

clrscr0;

for (I=0;i

printf("%d,%d\n",I,J);

}

程序运行后的输出结果是_________。

A)5,30B)5,35C)5,25D)5,20

答案:B

评析:数组的存储空间是在其定义后就分配的。字符数组a[7]="123\010\032"的存储空间是7个单元。即sizeof(a)=7。而函数strlen()是求字符串的长度的。a[7]="123\010\032"中,有两个转义字符,因此字符串的长度实际上是5个字符。所以strlen(a)=5。在程序的for循环中,其循环的次数是5次,j每次加7,所以后的结果是35。i的值就是循环的次数。

(25)如果在c程序中要用到库函数中的字符串比较函数strcmp(),那么在程序前面应该添加的头文件是__________。

A)stdio.hB)string.hC)alloc.hD)math.H

答案:B

评析:库函数并不是c语言的一部分,它是由人们根据需要编制并提供用户使用的。在调用不同类别的库函数时,必须在程序前添加相应的头文件。

(26)若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是_________。

A)函数调用可以嵌套和递归

B)函数调用可以作为一个函数的实参

C)函数调用可以出现在表达式中

D)函数调用可以作为一个函数的形参

答案:D

评析:函数的调用有三种方式。一是将函数调用作为一个语句。二是函数出现在_个表达式中。三是作为一个函数的实参。但是没有函数调用作为形参。而且函数在调用时还有嵌套和递归两种特殊的情形。

(27)下列关于c语言中字符常量与字符串常量的叙述中,错误的是_________。

A)字符常量是用单撇号括起来的一个字符

B)空格字符也可用作字符常量

C)字符串常量是用单撇号括起来的一个字符序列

D)字符串常量是用双撇号括起来的一个字符序列

答案:C

评析:c语言中的字符型数据常量有两类,一类是用单撇号括起来的字符常量。字符常量除了常用的字符外,还包括特殊的空格符和以"\"开头的转义字符。字符串常量则是用双撇号括起来的一个字符序列。

计算机二级考试C语言选择题(2)

{ char x=0xFFFF;printf("%d\n",x--);}

A.-32767

B.FFFE

C.1

D.32768

22.下面的函数调用语句中func函数的实参个数是( )。

func((f2v1,v2),(v3,v4,v5),(v6,max(v7,v8)))

A.3

B.4

C.5

D.8

23.语句“printf("akbre"\’hi\’y\\\bou\n")”;的输出结果是( )。

A.akbre\’hi\’y ’\\\bou

B.a\bre\’hi\\y\bou

C.re ’hi’you

D.abre’hi’y\bou

24.下面程序输出的是( )。

main()

{ int t=l;fun(fun(t));}

fun(int h)

{ static int a[3]={1.2.3};

int k;

for(k=0;k<3;k++)a[k]+=a[k]-h;

for(k=0;k<3;k++)printf("%d",a[k]);

printf("\n");

return(a[h]);}

A.1,2,3,

1,5,9,

B.1,3,5,

1,3,j,

C.1,3,5,

0,4,8,

D.1,3。5,

-1,3,7,

25.以下叙述中正确的是( )。

A.预处理命令行必须位于C源程序的起始位置

B.在C语言中,预处理命令行都以“#”开头

c.每个C程序必须在开头包含预处理命令行:#include

D.C语言的预处理不能实现宏定义和条件编译的功能

26.为了避免在嵌套的条件语句if else中产生二义性,C语言规定,else子句总是与( )配对。

A.缩排位置相同if

B.其前面近的if

C.其后面近的if

D.同一行上的if

27.设有下列程序段:

char str[]="HelloWorld":

char plr;

ptr=str:

执行上面的程序段后,(ptr+10)的'值为( )。

A.’\0 ’

B.’0’

C.不确定的值

D.’0’的地址

28.有以下程序:

void swap(charx,chary)

{ char t;

t=x;x=y;y=t;

}main()

{ chars1="abe",s2="123":

swap(s1,s2);

printf("%s,%s\n",s1,s2);

}程序执行后的输出结果是( )。

A.123,abe

B.abc.123

C.1bc,a23

D.321,cba

29.下列程序的运行结果是( )。

#include

main()

{ static char a[]="Languagef",b[]="programe":

charp1,p2;int k;

p1=a;p2=b;

for(k=0;k<=8;k++)

if((p1+k)==(p2+k))

printf("%c",(p1+k)):

}A.gae

B.ang

C.program

D.有语法错

30.下列程序的运行结果为( )。

#define MAX(x,y)(x)>(y)?(x):(y)

main()

{ int a=2,b=3,C=1,d=3,t:

printf("%d\n",(MAX(a+h,c+d))100):

}A.500

B.5

C.4

D.400

31.设int x=7,则~x的值是()。

A.-8

B.7

C.-1

D.1

32.有以下程序:

void fun(chara,charb)

{a=b; (a)++; }

main()

{char c1=’A ’,c2=’a’,p1,p2;

p1=&c1;p2=c2;fun(p1,p2);

printf("%C%c\n",c1,c2);

}程序运行后的输出结果是()。

A.Ab

B.aa

C.Aa

D.Bb

33.有以下程序:

int fun(int n)

{if(n==l)return l;

else return(n+fun(n一1)):

}main()

{int x;

scanf("%d",&x);x=fun(x);printf("%d\n",

x):

}执行程序时,给变量X输入10,程序的输出结果是()。

A.55

B.54

C.65

D.45

34.有以下程序:

void f(int x,int y)

{int t;

if(x}

main()

{int a=4,b=3,c=5;

f(a,b);f(a,c);f(b,c);

printf("%d,%d,%d\n",a,b,c);

}执行后输出结果是()。

A.3,4,5

B.5,3,4

C.5,4,3

D.4,3,5

35.以下程序的输出结果是()。

main()

{chars="12134211";

int v[4]=(0,0,0,0),k,i;

for(k=0;s[k];k++)

{switch(s[k])

{case’1’:i=0;

case’2’:i=1;

case’3’:i=2;

计算机二级c语言题库及答案

计算接二级c语言题库我建议大家去百度搜索:原创力文档

原创力文档大概收纳了100套计算机二级c语言试题,这100套题基本上涵盖了计算机二级c语言所有的题目和知识点。一共480多页pdf,这么多试题我们应该如何使用呢?

1,首先我们做题要有针对性地做,做的时候多加思考,为什么要操作这一步?为什么要输入这个代码?然后根据我们不明白不理解的地方对着答案多加练习。

2,然后我们要善于反思,善于总结。我们要学会归类,这一类题目怎么做?这一类题目用哪个函数?然后对于我们不理解的题目或者是错题要及时整理下来,随时翻阅查看。

3,我们一定要多加练习,熟悉各种公式,看到一个题目能马上在脑海中想到用什么公式,如何用,这就需要我们多加练习,而且要认真地练习。

4,第四点就是在考前一周左右,我们就要停止做题,开始回顾知识点,查看自己整理的错题,总结做题方法。然后要注意对于题库我们是不可能全做完的,100套题我们时间和精力是不允许的。我们要选择历年考的比较多的题目去做去练习。

总结一下:计算机二级c语言题库和答案,原创力文档整理的还算比较齐全的。

下半年计算机二级c语言基础试题

下半年计算机二级c语言基础试题

任何设计活动都是在各种约束条件和相互矛盾的需求之间寻求一种平衡,程序设计也不例外。下面是我收集的关于计算机二级c语言基础试题,希望大家认真阅读!

下半年计算机二级c语言基础试题1 一、选择:

1.给出以下定义:

char acX[ ]= "abcdefg";

char acY[ ]= {'a','b','c','d','e','f','g'};

则正确的叙述为( )

A) 数组acX和数组acY等价 B) 数组acX和数组acY的长度相同

C) 数组acX的长度大于数组acY的长度 D) 数组acX的长度小于数组acY的长度

答案:C

2.

void example(char acHello[])

{printf("%d", sizeof(acHello));

return;

}void main()

{char acHello[] = "hello";

example(acHello);//数组名称作参数,传的是地址,一个地址占四个字节

return;

}的输出是

A 4 B 5 C 6 D不确定

答案:A

3. 有以下程序段

char acArr[]= "ABCDE";

char pcPtr;

for(pcPtr = acArr; pcPtr < acArr + 5; pcPtr++)

{printf("%s/n", pcPtr);

}return;

输出结果是( )

A) ABCD B) A C) E D) ABCDE

B D BCDE

C C CDE

D B DE

E A E

答案:D

4.在中断中,不能同步获取信号量,但是可以释放信号量。

A.正确 B.错误

答案:A

5.以下叙述中不正确的是( )

A) 在不同的函数中可以使用相同名字的变量

B) 函数中的形式参数是局部变量

C) 在一个函数内定义的变量只在本函数范围内有效

D) 在一个函数内的复合语句中定义的变量在本函数范围内有效(复合语句指函数中的成对括号构成的代码)

答案:D

6.设有如下定义:

unsigned long pulArray[] = {6, 7, 8, 9, 10};

unsigned long pulPtr;

则下列程序段的输出结果为( )

pulPtr = pulArray;

(pulPtr + 2) += 2;

printf ("%d,%d/n", pulPtr, (pulPtr + 2));

A)8,10 B)6,8 C)7,9 D)6,10

答案:D

7. 定义结构体时有下面几种说法,请指出正确的(多选):______

A、结构体中的每个部分,进行四字节对齐;

B、结构体的总长度是四字节对齐;

C、结构中成员的存放不用考虑字节对齐情况;

答案:A、B

8.void example()

{int i;

char acNew[20];

for(i = 0; i < 10; i++)

{acNew[i] = '0';

}printf("%d/n", strlen(acNew));

return;

}的输出为( )

A 0 B 10 C 11 D不确定

答案:D

9.switch(c)中的c的数据类型可以是char、long、float、unsigned、bool. ( )

A. 正确 B. 错误

答案:B

10. 网络上传输的字节序默认是大字节的,如果主机是小字节序,在网络通信时则须进行字节序转换;如果主机是

大字节序,为了程序的一致性及可移植性,也在程序中加上字节序转换的操作(空操作)。

A. 正确 B.错误

答案:A

二、 填空题

1、 C语言函数返回类型的默认定义类型是

2、 函数的实参传递到形参有两种方式: 和

3、在一个函数内部调用另一个函数的调用方式称为 。在一个函数内部直接或间接调用该函数成为函数 的调用方式

4、C语言变量按其作用域分为 和

5、凡在函数中未指定存储类别的局部变量,其默认的存储类别为

三、 看程序写结果

1、#include

Int abc(int u,int v);

Void main()

{int a=24,b=16,c;

c=abc(a,b);

printf(“value=%d”,c);

}Int abc(int u, int v)

{int w;

While(v)

{w=u%v;

u=v;

v=w;

}Return u;

}2、#include

int x1=30,x2=40;

main()

{int x3=10,x4=20;

sub(x3,x4);

sub(x2,x1);

printf(“%d,%d,%d,%d ”,x3,x4,x1,x2);

}sub(int x,int y)

{x1=x;x=y;y=x1;}

3、#include

Main()

{int i=5;

Printf(“%d ”,sub(i));

}sub(int n)

{int a;

If(n==1) return 1;

a=n+sub(n-1);

return (a);

}4、#include

Void fun()

{static int m;

m+=2;

printf(“%d ”,m);

}Main()

{int a;

For(a=1;a<=4;a++) fun();

Printf(“ ”);

}四、 编程题

1、 编写一个函数,判断任一整数是否为素数,用main()函数调用并测试之。

2、 用递归方法求n!

3、 有一个一维数组,内放10个学生成绩,写一个函数,求出平均分,分和分

下半年计算机二级c语言基础试题2 1.下列叙述中正确的是( )。

A. 所有数据结构必须有根结点

B. 所有数据结构必须有终端结点(即叶子结点)

C. 只有一个根结点,且只有一个叶子结点的数据结构一定是线性结构

D. 没有根结点或没有叶子结点的数据结构一定是非线性结构

【答案】D

【解析】D项正确,线性结构的特点是:

①中必存在“第一个元素"且惟一;

②中必存在“后一个元素”且惟一;

③除后一个元素外,其他数据元素均有惟一的“后继;

④除第一个元素外,其他数据元素均有惟一的“前驱”。所以没有根结点或没有叶子结点的数据结构一定是非线性结构。AB两项错误,不是所有数据结构都必须有根结点和叶子结点;C项错误,数据结构中若有中间结点不满足只有一个前件或者后件的条件,就不是线性结构。答案选择D选项。

2. 以下叙述中错误的是( )。

A. C语言中的每条可执行语句和非执行语句终都将被转换成二进制的机器指令

B. C程序经过编译、链接步骤之后才能形成一个真正可执行的二进制机器指令文件

C. 用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中

D. C语言源程序经编译后生成后缀为.obj的目标程序

【答案】A

【解析】A项错误,注释语句不会被翻译成二进制的'机器指令。C源程序经过C编译程序编译之后生成后缀为.obj的二进制文件(称为目标文件),然后由“链接程序”(Link)的软件把.obj文件与各种库函数连接起来生成一个后缀为.exe的可执行文件。答案选择A选项。

3. C语言主要是借助以下( )功能来实现程序模块化的。

A. 定义函数

B. 定义常量和外部变量

C. 三种基本结构语句

D. 丰富的数据类型

【答案】A

【解析】C程序的模块化主要通过函数来实现。C语言允许对函数单独进行编译,从而可以实现模块化。答案选择A选项。

4. 有以下程序段:

char ch;

int k;

ch='a';

k=12;

print("%c,%d,",h,ch,k);

printf("k=%d ",k);

已知字符a的ASCII码十进制值为97,则执行上述程序段后输出的结果是( )。

A. 因变量类型与格式描述符的类型不匹配输出无定值

B. 输出项与格式描述符个数不符,输出为零值或不定值

C.a,97,12k=12

D. a,97,k=12

【答案】D

【解析】字符变量的值是该字符的ASCII码值,可以参与整型变量所允许的任何运算。"ch='a",%c表示以字符格式输出ch的值,所以输出为a;%d表示以十进制代码的形式输出ch的值,为97;k没有对应的输出格式,不输出。在第二个语句中,首先输出"k=",然后以十进制代码输出k的值,为12。答案选择D选项。

5. 下列叙述中正确的是( )。

A. 栈是“先进先出”的线性表

B. 队列是“先进后出"的线性表

C. 循环队列是非线性结构

D. 有序线性表既可以采用顺序存储结构,也可以采用链式存储结构

【答案】D

【解析】有序的线性表既可采用顺序存储结构,也可以采用链式存储结构。A项错误,栈是“先进后出"的线性表B项错误,队列是“先进先出"的线性表;C项错误,循环队列是线性结构的,有序的线性表既可采用顺序存储结构,也可采用链式存储结构。

答案选择D选项。

6. 某二叉树的中序序列为DCBAEFG,后序序列为DCBGFEA,则该二叉树的深度(根结点在第1层)为( )。

A. 5

B. 40

C.3

D. 2

【答案】B

【解析】二叉树的后序序列为DCBGFEA,则A为根结点。中序序列为DCBAEFG,则DCB为左子树结点,EFG为右子树结点。同理B为C父结点,C为D父结点。根据分析,可画出左子树,同理E为F父结点,F为G父结点。根据分析,可画出右子树,故二叉树深度为4层。答案选择B选项。

7. 设有定义:struct{intn;floatx;}s[2],m[2]={{10,2.8},{0,0.0}};,则以下赋值语句中正确的是( )。

A. s[0]=m[1];

B. s=m;

C.s.n=m.n;

D. s[2].x=m[2].x;

【答案】A

【解析】定义了结构体类型数组s,长度为2,结构体类型数组m,长度为2,并对数组m进行了初始化。同类型的结构体可以直接用变量名实现赋值,A项正确;数组名为数组首地址,地址常量之间不可以相互赋值,B项错误;数组名为地址常量不是结构体变量,不能引用成员,C项错误;s[2]与m[2]数组越界,D项错误。答案选择A选项。

8. 关于C语言标识符,以下叙述错误的是( )。

A. 标识符可全部由数字组成

B. 标识符可全部由下划线组成

C. 标识符可全部由小写字母组成

D. 标识符可全部由大写字母组成

【答案】A

【解析】C语言标识符只能由字母、数字、下划线构成,且只能以字母、下划线开头,故答案选择A选项。

9. 以下程序段中的变量已定义为int类型,则

sum=pAd=5;

pAd=sum++,++pAd,pAd++;

printf("%d ",pAd);

程序段的输出结果是( )。

A. 6

B. 4

C. 5

D. 7

【答案】D

【解析】自增和自减运算符的两种用法:前置运算,运算符放在变量之前,规则是先使变量的值增(或减)1,然后以变化后表达式的值参与其他运算;后置运算,运算符放在变量之后,规则是变量先参与其他运算,然后再使变量的值增(或减)1。执行pAd=sum++,sum++是后置自增,执行完后,pAd=5,sum=6。++pAd和pAd++语句中没有其他运算,即效果相同,pAd分别加1,两句执行完后,pAd7。答案选择D选项。

;

计算机二级考试C语言模拟试题二

1. 运算符________的优先级。

A.[ ]

B. +=

C. ?:

D.++

2.main( )

{ int n; ( n=64,n+6),n2; printf(“n=%d

”,n); }

此程序的输出结果是______________.

A.30

B. 24

C. 60

D. 48

3.若有如下定义,则__________是对数组元素的正确的引用。.

int a[10] , p ; p=a ;

A. &a[10]

B. a[11]

C. (p+11)

D. p p p

4.设整型变量n的值为2,执行语句“n+=n-=nn;”后,n的值是__________

A. 0

B. 4

C. - 4

D. 2

5.各种基本数据类型的存贮空间正确的长度排列为__________。

A.Char

C.Char

6.下面的变量说明中__________是正确的。

A.char:a, b, c;

B.char a; b; c;

C.char a, b, c;

D.char a, b, c

7.表达式y=(13>12?15:6>7?8:9)的值为____________ 。

A 9

B 8

C 15

D. 1

8.若x=5,y=3 则y=x+5; y的值为___________.

A. 10

B. 20

C. 15

D. 30

9.能正确表示a和b同时为正或同时为负的逻辑表达式是_________。

A.a>=0||b>=0)&&(a<0 ||b<0)

B.(a>=0 && b>=0)&&(a<0 && b<0)

C.(a+b>0) &&(a+b<=0)

D. ab>0

10.C语言中,合法的字符型常数是_________。

A.‘A’

B.“A”

C. 65

D. A

11.已有定义 int x=3, y=4, z=5;则表达式“!(x+y)+z-1&&y+z/2”的值是________。

A.6

B.0

C.2

D.1

12.若变量c为char类型,能正确判断出c为小写字母的表达式是_______。

A.’a’<=c<=’z’

B. (c>=’a’) || (c<=’z’)

C.(‘a’<=c) and (‘z’>=c)

D. (c>=’a’) && (c<=’z’)

13.设有定义:long x=-123456L; 则以下能够正确输出变量x值的语句是_______。

A.printf(“x=%d

”,x)

B.printf(“x=%ld

”,x)

C.printf(“x=l

”,x)

C.printf(“x=%D

”,x);

14.从循环体内某一层跳出,继续执行循环外的语句是:___________。

A. break语句

B.return语句

C.continue语句

D.空语句。

15.C语言用_______表示逻辑“真”值。

A.true

B.t或y

C.非零整型值

D.整型值0

16.为了避免嵌套的条件分支语句if—else 的二义性,C语言规定:C程序中的else总是与_____组成配对关系。

A.缩排位置相同的if

B.在其之前未配对的if

C.在其之前未配对的近的if

D.同一行上的if

17.在函数中默认存储类型说明符的变量应该是________存储类型。

A.内部静态

B. 外部

C.自动

D. 寄存器

18.C语言中以只读方式打开一个文件应选择_______________参数。

A.“r”

B.“w”

C.“rb”

D.“a”

19.设有数组定义:char array[]=”student”;则数组所占的存贮空间为__________。

A.6个字节

B. 7个字节

C. 8个字节

D. 9个字节

20.根据C语言的语法规则,下列________个是不合法标识符。

A.do

B. Name

C. R5

D. _exam

二、判断题

1. C 语言源程序文件通过了编译、连接之后 , 生成一个后缀为 .EXE 的文件。 ( )

2.在 C 程序中 , 函数既可以嵌套定义 , 也可以嵌套调用。( )

3.在 C 程序中 ,APH 和 aph 代表不同的变量。( )

4.表达式 0195 是一个八进制整数。( )

5.Continue语句的作用是结束本次循环。( )

6.Extern变量的.生命期是整个程序执行期。 ( )

7.C语言中字符串的结束符是’\0’。 ( )

8.利用fclose函数关闭已打开的文件。 ( )。

9.C程序总是从main( ) 函数的第一条语句开始执行的。( )

10.数组名代表数组的首地址。( )

三、填空题

1.C语言的预处理语句以__________开头。

2.表达式7+10>2 && 25 %5的结果是_______________。

3.下列程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。

Int n=0, ch; Ch=getchar( );

While( __________________ )

{ if ( ________________ ) n++; c=getchar( ); }

4.C语言中getchar() 函数的功能是_________________________。

5.int p 的含义是______________________________。

6.定义fp为文件型指针变量的定义方法为_______________。

7.数组 int a[3][3];共定义了____________个数组元素。

四、读程序题。

1. 改正下列程序中不正确的语句。

main( )

{ int a;

scanf(“%d”, a); if (a = 1) printf(“One

”) ; }

2.写出下列程序的运行结果。

fun(int a, int b)

{ if(a>b) return (a);

Else return (b); }

main()

{ int x=3,y=8,z=6,r;

r=fun(fun(x,y),2z); printf(“%d

”,r); }

3. 改正下列程序中不正确的语句。

main()

{ int n ;

float s=1.0;

for(n=10;n>1;n- -)

s=s+1/n;

printf(“%6.1f

”,s); }

4. 写出下列程序的运行结果。

main()

{ int n;

For(n=3; n<=10; n++)

{ if(n%6= =0) break; Printf(“%d”,n); } }

5.写出下列程序的运行结果。

#include “stdio.h”

Main()

{ int a[]={1,2,3,-4,5};

int m,n,p; p=&a[0]; m=(p+1); n=(p+4);

printf(“%d %d %d ”,p,m,n); }

五、编程题

1. 编程计算下列表达式:s=n!(n从键盘上输入)

2.输出1—100之间不能被12整除的数。

3.从键盘上输出10个整数存入一维数组中,按由大到小的顺序输出。

4.从键盘上输入9个数,按3行3列的格式输出。

5.编程将文件read.txt中的字符读出显示到屏幕上。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至836084111@qq.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息