2004年计算机二级c语言答案详解,2015年计算机二级《C语言》精选练习题及答案(4)...

2015年计算机二级《C语言》精选练习题及答案(4)

浏览次数:     时间:2015/11/17

1[填空题]给定程序中,函数fun的功能是:调用随机函数产生20个互不相同的整数放在形参a所指数组中(此数组在主函数中已置O)。

请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。

注意:部分源程序在文件BLANKl.C中。

不得增行或删行,也不得更改程序的结构!

试题程序:

2004年计算机二级c语言答案详解,2015年计算机二级《C语言》精选练习题及答案(4)..._第1张图片

参考解析:

(1)N或20 (2)break (3)n

【解题思路】

填空l:变量n用于存储数组的下标,要通过while语句对数组进行赋值,数组的容量为20,因此循环条件应为n<20。

填空2:通过一个for循环判断X是否与数组中已存的元素重复,若重复则跳出for循环结束。

填空3:若for循环是由break语句结束的,则X与数组中的元素重复,此时i必然小于n;若for循环是因为循环变量i递增到某值,而不再满足循环条件结束的,说明X的值与数组中的元素不重复,则此时i的值等于n。

2[简答题]下列给定程序中函数fun的功能是:统计substr所指的字符串在str所指的字符串中出现的次数。

例如,若字符串为aaas 1kaaas,子字符串为as,则应输出2。

请改正程序中的错误,使它能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

试题程序:

829fd196727a5bb1f9d246bb01775552.png

2004年计算机二级c语言答案详解,2015年计算机二级《C语言》精选练习题及答案(4)..._第2张图片

参考解析:

【参考答案】

(1)for(i=0;str[i];i++)

(2)if(substr[k+1]==’\0’)

【考点分析】

本题考查:for循环语句的格式,for循环语句使用最为灵活,其一般形式为for(表达式1;表达式2;表达式3),注意表达式之间使用“;”相隔;if条件语句的格式,其中if关键字需

要区别大小写,不能混淆使用。关键字是由C语言规定的具有特定意义的字符串,也称为保留字。用户定义的标识符不应与关键字相同,并且关键字应小写。.

【解题思路】

先看循环条件for(i=0,str[i],i++),不难发现此处for循环语句的格式有误,其中表达式之间应以“;”相隔;同时很容易发现if条件语句处的关键字书写错误。

3[单选题] 以下叙述中正确的是

A.语句int a[8]={0};是合法的

B.语句inta[]={0};是不合法的,遗漏了数组的大小

C.语句char a[2]={ "A","BII};是合法的,定义了一个包含两个字符的数组

D.语句char a[3];a="AB";是合法的,因为数组有三个字符空间的容量,可以保存两个字符

参考答案:A

参考解析:B选项中,如给全部元素赋值,则在数组说明中,可以不给出数组元素的个数;C选项中,char a[2]={ "","B"};不合法,应为char a[2]={′A′,′B′};;D选项中,字符数组只能在定义的时候可以用字符串常量来初始化,但不能够先定义字符数组,然后再用字符串常量进行赋值。因此A选项正确。

4[单选题] 以下选项中合法的实型常量是(  )

A.0B.3.13e-2.1C..914D.2.0*10

参考答案:C

参考解析:A选项为整型数据。B选项中e后面必须为整数。D选项是表达式,不是常量,所以选择C。

5[单选题] 以下叙述中正确的是

A.循环发生嵌套时,最多只能两层

B.三种循环for,while,do-while可以互相嵌套

C.循环嵌套时,如果不进行缩进形式书写代码,则会有编译错误

D.for语句的圆括号中的表达式不能都省略掉

参考答案:B

参考解析:A选项中,循环发生嵌套时,没有规定层数;C选项中,循环嵌套时,书写代码时没有要求必须缩进;D选项中,for语句的圆括号中的表达式都可以省掉。因此B选项正确。

6[单选题] 下列叙述中正确的是( )。

A.有一个以上根结点的数据结构不一定是非线性结构

B.只有一个根结点的数据结构不一定是线性结构

C.循环链表是非线性结构

D.双向链表是非线性结构

参考答案:B

参考解析:线性结构应满足:有且只有一个根结点与每个结点最多有一个前件,也最多有一个后件,所以8正确。所以有一个以上根结点的数据结构一定是非线性结构,所以A错误。循环链表和双向链表都是线性结构的数据结构。

7[单选题] 若变量已正确定义

for(x=0,Y=0;(y!=99&&x<4);x++)

则以上for循环

A.执行3次B.执行4次C.执行无限次D.执行次数不定

参考答案:B

参考解析:本题重点考查for语句的循环次数,for(x=0,y=0;(y!=99&&x<4);x++),y!=99&&x<4即循环条件当y不等于99以及x<4时,执行循环语句,当有一个条件不成立时,均结束循环,因此循环4次,B选项正确。

8[单选题] 负责数据库中查询操作的数据库语言是( )。

A.数据定义语言B.数据管理语言C.数据操纵语言D.数据控制语言

参考答案:C

参考解析:数据定义语言:负责数据的模式定义与数据的物理存取构建;数据操纵语言:负责数据的操纵。包括查询及增、删、改等操作;数据控制语言:负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能。

9[单选题] 有以下程序:

fe6df708e0660633c4b437227fcd3fbe.png

2004年计算机二级c语言答案详解,2015年计算机二级《C语言》精选练习题及答案(4)..._第3张图片

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

A.PrphsbnB.ProhsbnC.ProgsbnD.Program

参考答案:B

参考解析:(*q)++是q所指的字符加l,q++就是指针移到下一个字符。因此B选项正确。

10[单选题] 有以下程序:

2004年计算机二级c语言答案详解,2015年计算机二级《C语言》精选练习题及答案(4)..._第4张图片

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

A.0B.9C.6D.8

参考答案:C

参考解析:主函数中调用f函数,同时将数值3传递给变量x,执行条件不满足条件if(x==0IlX==1);跳过re—turn(3);,直接执行语句Y=X}X—f(x一2);这里f(x一2)为函数的递归调用,再次诃用f函数,此时x=1,判断条件成立,返回3给f(1),Y=3}3—3=6,最后将6返回主函数,并进行输出。因此c选项正确。

上一篇:2015年计算机二级C语言测试题及答案解析(一)

下一篇:2015年计算机二级《C语言》精选练习题及答案(3)

你可能感兴趣的:(2004年计算机二级c语言答案详解,2015年计算机二级《C语言》精选练习题及答案(4)...)