07年计算机等级考试二级C 笔试模拟试题(4)

文章作者 100test 发表时间 2007:04:06 21:30:57
来源 100Test.Com百考试题网


计算机等级考试训练软件《百宝箱》

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

(1)在深度为5的满二叉树中,叶子节点的个数为
A)32 B)31 C)16 D)15

(2)若某二叉树的前序遍历访问顺序是abdgcefh,中序遍历访问顺序是dgbaechf,则其后序遍历的节点访问顺序是
A)bdgcefha B)gdbecfha C)bdgaechf D)gdbehlca

(3)一些重要的程序语言油口C语言和Pascal语言)允许过程的递归调用而实现递归调用中的存储分配通常用
A)栈 B)堆 C)数组 D)链表

(4)软件工程的理论和技术性研究的内容主要包括软件开发技术和
A)消除软件危机 B)软件工程管理
C)程序设计自动化 D)实现软件可重用

(5)开发软件时对提高开发人员工作效率至关重要的是
A)操作系统的资源管理功能 B)先进的软件开发工具和环境
C)程序人员的数量 D)计算机的并行处理能力

(6)在软件测试设计中,软件测试的主要目的是
A)实验性运行软件 B)证明软件正确
C)找出软件中全部错误 D)发现软件错误而执行程序

(7)数据处理的最小单位是
A)数据 B)数据兀素 C)数据项 D)数据结构

(8)引索属于
A)模式 B)内模式 C)外模式 D)概念模式

(9)下述关于数据库系统的叙述中正确的是
A)数据库系统减少了数据冗余
B)数据库系统避免了一切冗余
C)数据库系统中数据的一致性是指数据类型一致
D)数据库系统比文件系统能管理更多的数据

(10)数据库系统的核心是
A)数据库 B)数据库管理系统 C)模拟模型 D)软件工程

(11)下列关于C 语言类的描述中错误的是
A)类用于描述事物的属性和对事物的操作
B)类与类之间通过封装而具有明确的独立性
C)类与类之间必须是平等的关系,而不能组成层次结构
D)类与类之间可以通过一些方法进行通信和联络

(12)在C 语言中.表不一条语句结束的标号是
A)# B): C)// D)}

(13)以下叙述中正确的是
A)构成C 语言程序的基本单位是类
B)可以在一个函数中定义另一个函数
C) main()函数必须放在其他函数之前
D)所有被调用的函数一定要在调用之前进行定义

(14)己知有定义
const int D二5.
int i=1.
double f=0.32:
char c=15.
则下列选项错误的是
A) i. B)D--. C)C . D)--f.

(15)以下程序的输出结果是
#include(iostream. h>
void reverse(int a[],int n)
{ int i,t.
for(i=0.. {t=a[i].a[i]=a[n-1-i].a[n-1-i]=t.}
}
void main()
{ int b[10]={1,2,3,4,5,6,7,8,9,10}.int i,s=0.
reverse(b,8).
for(i=6.i<10.i )s =b[i].
cout< }
A)22 B)10 C)34 D)30

(16)下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,在划线处应填入的选项是
#include
void main()
{
int i=0,j,k.
do{i .k=316-13*i.}while( ).
j=k/11.
cout<<”316=13*”< }
A)k/11 B)k% 11 C)k/11==0 D)k==0

(17)设有数组定义:char array[]=”China".,则数组array所占的空间为
A)4个字节 B)5个字节 C) 6个字节 D)7个字节

(18)若已定义:
int a[]={0,1,2,3,4,5,6,7,8,9},*P=a,i.
其中O≤i≤9,则对a数组元素不正确的引用是
A)a[p-a] B)*(&.a[i]) C)p[i] D)a[10]

(19)以下程序的输出结果是
#include
void main()
{ int x=1,y=3.
cout< {int x=0.x =y*2.
cout< }
cout< }
A) 1,6,3,1,3 B)1,6,3,6,3 C)1,6,3,2,3 D)1,7,3,2,3

(20)函数fun的返回值是
fun(char*a,char*b)
{
int num=0,n=0.
while(*(a num)!=‘\0’)num .
while(b[n]){*(a num)=b[n].num .n .}
return num.
}
A)字符串a的长度 B)字符串b的长度
C)字符串a和b的长度之差 D)字符串a和b的长度之和

(21)下面程序的结果为
#include
void main()
{ int i.
int a[3][3]={1,2,3,4,5,6,7,8,9}.
for(i=0.i<3.i )
cout< }
A)1 5 9 B)7 5 3 C)3 5 7 D) 5 9 1

(22)下面程序的结果为
#include
int c.
class A
{
private:
int a.
static int b.
public.
A(){a=0.c=0.}
void seta(){a .}
void setb(){b .}
void setc(){c .}
void display(){cout< }.
int A::b=0.
void main()
{
A al,a2.
al.seta().
al.setb().
al.setc().
a2.seta().
a2.setb().
a3.setc().
a2.display().
A)121 B)122 C)112 D)222

(23)下列描述中哪个是正确的。
A)私有派生的子类无法访问父类的成员
B)类A的私有派生子类的派生类C无法初始化其祖先类A对象的属性,因为类A的成员对类C是不可访问的
C)私有派生类不能作为基类派生子类
D)私有派生类的所有子孙类将无法继续继承该类的成员

(24)下列关于构造函数说法不正确的是
A)构造函数必须与类同名
B)构造函数可以省略不写
C)构造函数必须有返回值
D)在构造函数中可以对类中的成员进行初始化

(25)如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是
A)一元运算符 B)二元运算符
C)选项A)和选项B)都可能 D)重载错误

(26)在重载一个运算符时,如果其参数表中有一个参数,则说明该运算符是
A)一元成员运算符 B)二元成员运算符
C)一元友元运算符 D)选项B)和选项C)都可能

(27)下列关于模板的说法正确的是
A)模板的实参在任何时候都可以省略 B)类模板与模板类所指的是同一概念
C)类模板的参数必须是虚拟类型的 D)类模板中的成员函数全部都是模板函数
(28)表示在输出时显示小数位,和在文件输入时判断文件尾的函数分别是
A) showbase()和eof() B)showpoint()和eof()
C)showpoint()和bad() D)showpoint()和good()

(29)下面程序段的运行结果是
void main()
{
int t,a,b,c.
a=1.b=2.c=2:
while(a {t=a.a=b.b=t.c--.}
cout< }
A)1,2,0 B)2,1,0 C)1,2,1 D)2,1,1

(30)下列程序中画线处应填入的语句是
class Base
{
public:
void fun(){cout<<”Base of fun”< }.
class Derived:public Base
{
void fun()
{
//显示基类的成员函数fun
cout<<”Derived of fun”< }.
A)fun(). B)Base. fun(). C)Base::fun().D)Base->fun-:

(31)若定义int k=7,x=12.,则值为3的表达式是
A)x%=(k%=5) B)x%=(k-k%5)
C)x%=k-k%5 D)(x%=k)-(k%=5)

(32)在位运算中,操作数每右移一位,其结果相当于
A)操作数乘以2 B)操作数除以2 C)操作数乘以4 D)操作数除以4

(33)有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b。则不能把节点b连接到节点a 之后的语句是
struct node
{ char data.
struct node*next.
}a,b,*p=&.a,*q=&.b.
A)a. next=q. B)p. next=&.b. C)p->next=&.b. D)(*p).next=q.

(34)一个类的友元函数能够访问该类的
A)私有成员 B)保护成员 C)公有成员 D)所有成员

(35)下面程序的输出结果是
#include
#include
void main()
{
char p1[10],p2[10].
strepy(p1,”abc”):
strcpy(p2,”ABC”).
char str[50]=”xyz”.
strcpy(str 2,strcat(p1,p2)).
cout< }
A)xyzabcABC B)zabcABC C)xyabcABC D)yzabcABC

二、填空题(每空2分,共30分)
请将答案分别写在答题卡中序号为【1】~【15】的横线上,答在试卷上不得分。

(1)在树形结构中,树根节点没有 【1】 。

(2)Jackson结构化程序设计方法是英国的M. Jackson提出的,它是一种面向 【2】 的设计方法。

(3)面向对象的模型中,最基本的概念是对象和 【3】 。

(4)软件设计模块化的目的是 【4】 。

(5)数据模型按不同应用层次分成3种类型,它们是概念数据模型、 【5】 和物理数据模型。

(6)派生类的成员一般分为两部分,一部分是 【6】 ,另一部分是自己定义的新成员。

(7)以下程序输出的结果是 【7】 。
#include<]ostream. h>
void main()
{
int a=5,h=4,c=3,d.
d=(a>b>c).
cout< }

(8)设i,j,k均为int型变量,则执行完for(i=0,j=10.i<=j.i ,j-- k=i j.语句后,k的值为 【8】 。

(9)如果要把返回值为void的函数A声明为类B的友元函数,则应在类B的定义中加入的语句是 【9】 。

(10)如果类B继承了类A,则称类A为类B的基类,类B称为类A的 【10】 。

(11)将x y中的 运算符用友元函数重载应写为 【11】 。

(12)已知程序的结果为123,请填空

#include
template
class A
{
public:
Tx,y,z:
void display(){cout< }
void main()
{
al.
【12】
【13】
【14】
al.display().
}

(13)下列程序段的输出结果是 【15】 。
cout<

07年计算机等级考试二级C 模拟试题答案(4)



相关文章


07年计算机等级考试二级C 模拟试题答案(2)
07年计算机等级考试二级C 模拟试题答案(3)
07年4月计算机等级考试二级C 笔试模拟试题(3)
07年计算机等级考试二级C 模拟试题答案(4)
07年计算机等级考试二级C 笔试模拟试题(4)
计算机等级考试二级C 程序设计辅导
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛