全国计算机二级考试试题及答案

才智馆 人气:2.38W

计算和模拟作为一种新的研究手段,常使一些学科衍生出新的分支学科。yjbys小编收集了一套全国计算机二级的文章" target="_blank" >计算机二级考试试题及答案,希望大家认真做题!

全国计算机二级考试试题及答案

  一、选择题

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

A.调用printf( )函数时,必须要有输出项

B.使用putchar( )函数时,必须在之前包含头文件stdio.h

C.在C语言中,整数可以以二进制、八进制或十六进制的形式输出

D.调节getchar( )函数读入字符时,可以从键盘上输入字符所对应的ASCII码

正确答案:B

答案解析:选项A,若printf函数没有输出项,且格式字符串中不含格式信息,则输出的是格式字符串本身,若格式字符串含有格式信息,运行时则出现错误提示;选项C,在C语言中,整数可以十进制、八进制或十六进制的形式输出;选项D,getchar函数是从标准输入设备读取一个字符。

2). 以下结构体类型说明和变量定义中正确的是( )

def struct { int n; char c; } REC; REC t1,t2;

ct REC ; { int n; char c; }; REC t1,t2;

def struct REC; { int n=0; char c=′A′; } t1,t2;

ct { int n; char c; } REC; REC t1,t2;

正确答案:A

答案解析:定义结构体类型的一般形式为:struct 结构体名 {成员列表};struct 结构体名后不能加″;″号,所以选项B、C)错误,选项D中定义无名称的结构体类型同时定义结构体变量形式应为struct t1,t2;选项A为用户自定义类型,其为正确的定义形式。

3). 若实体A和B是一对多的联系,实体B和C是一对一的联系,则实体A和C的联系是( )

A.一对一

B.一对多

C.多对一

D.多对多

正确答案:B

答案解析:由于B和C有一一对应的联系,而A和B只间有一对多的.联系,则通过关系之间的传递,则A和C之间也是一对多的联系。

4). 关于C语言的变量,以下叙述中错误的是( )

A.所谓变量是指在程序运行过程中其值可以被改变的量

B.变量所占的存储单元地址可以随时改变

C.程序中用到的所有变量都必须先定义后才能使用

D.由三条下划线构成的符号名是合法的变量名

正确答案:B

答案解析:变量是指在程序运行过程中其值可以改变的值,一个变量实质上是代表了内存中的某个存储单元。在程序中对某个变量的操作实际上就是对这个存储单元的操作,程序运行期间,这个分配的存储单元不会改变,但是其值可以变化。变量命名要符合标识符的规定,其中下划线是标识符的组成字符。程序中所有变量都必须先定义后使用。

5). 当变量c的值不为2、4、6时,值也为″真″的表达式是( )

A.(c==2)||(c==4)||(c==6)

B.(c>=2 && c<=6)&& !(c%2)

C.(c>=2 && c<=6)&&(c%2!=1)

D.(c>=2 && c<=6) || (c!=3) || (c!=5)

正确答案:D

答案解析:逻辑或运算中,只要有一项为真,表达式的值就为真,故选项D中c的值不为2、4、6时,那么表达式(c>=2 && c<=6)以及(c!=3)、(c!=5)必有一个成立,表达式的值也为真。

6). 在C语言中,函数返回值的类型最终取决于

A.函数定义时在函数首部所说明的函数类型

rn语句中表达式值的类型

C.调用函数时主调函数所传递的实参类型

D.函数定义时形参的类型

正确答案:A

答案解析:在C语言中,应当在定义函数时指定函数值的类型,凡不加类型说明的函数,一律按整型处理。在定义函数时,对函数值说明的类型一般应该和return语句中的表达式类型一致。如果函数值的类型和return语句中的表达式类型不一致,则以函数类型为主,即函数类型决定返回值的类型。

  二、程序填空题

围绕山顶一圈有N个山洞,编号为0、1…2 3……、N一1,有一只狐狸和一只兔子在洞中居住。狐狸总想找到兔子并吃掉它,它的寻找方法是先到第一个洞(即编号为0的洞)中找;再隔1个洞.即到编号为2的个洞中找;再隔2个洞,即到编号为5的洞中找;下次再隔3个洞;即到编号为9的洞中找...…·。若狐狸找一圈,请为兔子指出所有不安全的洞号。程序中用a数组元素模拟一个洞,数组元素的下标即为洞号,数组元素中的值为0时,表示该洞安全,为l时表示该洞不安全。若形参n的值为30时,不安全的洞号是0…2 5 9、14、20、27。

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

注意:源程序存放在考生文件夹下的BLANKl.C中。不得增行或删行,也不得更改程序的结构!

试题程序:

【参考答案】

(1)0(2)t(3)i+t

【解题思路】

首先为数组所有元素赋初值0,利用循环为符合条件的数组赋值为1,并计算下一个数据的下标。设置一个变量存放间隔数,每次循环间隔数加1。本次下标加问隔数加1为下一个下标。

填空1:利用循环为数组所有元素赋值为0。

填空2:变量t为间隔数,在循环过程中每次加1,设定初始值为1。

填空3:下一个数组下标为本次的下标加间隔数加1的值。