logo资料库

2007年9月全国计算机二级C++考试真题及答案.doc

第1页 / 共13页
第2页 / 共13页
第3页 / 共13页
第4页 / 共13页
第5页 / 共13页
第6页 / 共13页
第7页 / 共13页
第8页 / 共13页
资料共13页,剩余部分请下载后查看
2007 年 9 月全国计算机二级 C++考试真题及答案 (考试时间 90 分钟,满分 100 分) 一、选择题(每小题 2 分,共 70 分) 下列个体 A、B、C、D 四个选项重,只有一个选项是正确的,请将正确选项涂写在答题卡 相应位置上,答在试卷上不得分。 (1)软件是指 A 程序 B 程序和文档 C 算法加数据结构 D 程序、数据与相关文档的完整集合 (2)软件调试的目的是 A 发现错误 B 改正错误 C 改善软件的性能 D 验证软件的正确性 (3)在面对对象方法中,实现信息隐蔽是依靠 A 对象的继承 B 对象的多态 C 对象的封装 D 对象的分类 (4)下列叙述重,不符合良好程序设计风格要求是 A 程序的效率第一,清晰第二 B 程序的可读性好 C 程序中要有必要的注释 D 输入数据前要有提示信息 (5)下列叙述中正确的是 A 程序执行的效率与数据的存储结构密切相关 B 程序执行的效率只取决于程序的控制结构 C 程序执行的效率之取决于所处理的数据量 D 以上三种说法都不对 (6)下列叙述中正确的是 A 数据的输入结构与存储结构必定是——对应的 B 计算机存储空间是向量式的存储结构,因此,数据的存储结构一定是线性结构 C 程序设计语言中的数组一般是顺序存储结构,因此,利用数组只能处理线性结构 D 以上三种说法都不对 1
(8)一棵二叉树中共有 70 个叶子结点于 80 个度为 1 的结点,则该二叉树重的总结点数为 A 219 B 221 C 229 D 221 (9)下列叙述重正确的是 A 数据库系统是一个独立的系统,它需要操作系统的支持 B 数据库技术的根本目标是要解决数据的共享问题 C 数据库管理系统是数据库系统 D 以上说法都不正确 (10)下列叙述中正确的是 A 为了建立一个关系,首先是要构造数据的逻辑关系 B 表示关系的二维表中各各组的每一个分量还可以分成若干数据项 C 一个关系的属性名称为关系模式 D 一个关系可以包括多个二维表 (11)在函数中,可以用 auto,extem,register,和 static 这四个关键字中的一个来说明变 量的存储类型,如果不说明存储类型,则默认的存储类型是 A auto B extem C register D static (12)对于一个类定义,下列叙述中错误的是 A 如果没有定义拷贝构造函数,编译器将生成一个拷贝构造函数 B 如果没有定义缺省的构造函数,编译器将一定生成一个缺省的构造函数 C 如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数 D 如果已经定义了构造函数和拷贝构造函数,编译器不会生成任何构造函数 (13)如果派生类以 public 方式继承基类,则原基类的 protected 成员和 public 成员在派 生类中的访问类型分别是 A public 和 public B public 和 protected C protected 和 public D protected 和 protected (14)下列运算符函数中肯定不属于类 FunNumber 的成员函数的是 A int operator-(FunNumber) B FunNumber operator-() C FunNumber operator-(int) D int operator – (FunNumber) (15)C++中的模板包括 2
A 对象模板和函数模板 B 对象模板和类模板 C 函数模板和类模板 D 变量模板和对象模板 (16)如果调用 C++流进行输入输出,下面的叙述中正确的是 A 只能借助于流对象进行输入输出 B 只能进行格式化输入输出 C 只能借助于 cin 和 cout 进行输入输出 D 只能使用运算符 》和《 进行输入输出 (17)下列富豪中不属于 C++关键字的是 A friend B namespace C continue D byte (18)下列各组的量申明中,含义相同的一组是 A unsigned long int 和 long B signed short int 和 short B unsigned short 和 short D short int 和 int (19) 必须用一对打括号括起来的程序段是 A switch 语句中的 case 标号语句 B if 语句的分支 C 循环语句的循环体 D 函数的函数体 (20)语句的 int*p=&k 定义于指针 P,于这个语句等效的语句序列是 A int*p;p=&k B int*p;p=k C int*p;*p=&k D int*p;*p=k (21)关于函数重载,下列叙述中错误的是 A 重载函数的函数名必须相同 B 重载函数必须在函数个数或类型上有所不同 C 重载函数的返回值类型必须相同 D 重载函数的函数体可以有所不同 (22)有如下头文件 Int f1(); Static int f2(); Class MA{ Public 3
Int f3(); Static int f4(); }; 在所描述的函数中,具有隐含的 this 指针的是 A f1 B f2 C f3 D f4 (23)派生类的成员函数不能访问基类的 A 共有成员和保护成员 B 共有成员 C 私有成员 D 保护成员 (24)下列关于运算符重载的描述中,正确的是 A 运算符重载为成员函数时,若参数表中五参数,重载的是一元运算符 B 一元运算符只能作为成员函数重载 C 二元运算符重载为非成员函数时,参数表中有一个参数 D C++中可以重载所有的运算符 (25)下列关于类模板的模板参数的叙述中,错误的是 A 模板参数可以作为数据成员的类型 B 模板参数可以作为成员函数的返回类型 C 模板参数可以作为成员函数的参数类型 D 模板函数不能作为成员函数的局部变量的类型 (26)已知一程序运行后执行的第一个输出操作是 Cout< Using namespace std; Class myclass{ Public: MyClass(){++count;} ~MyClass(){--count;} 4
Static int getcount(){return count;} Private Static int count; }; Int MyClass::count=0; Int main(){ Myclass obj; Cout<
D val=10 val=20 (29)有如下程序 #include Using namespace std; Class part{ Public; Part(int x=(\):val(x){cout,,val;} -part(){cout< Using namespace std; Class base{ Public: 6
Base(int x=0){cout< 7
Using namespace sid; Class base{ Public; Void output(){cout<<1;} Virtual void print() {cout<output(); Ptr->print(); Delete ptr; Return(); } 程序的输出结果是 A 1B B 1D C 2B D 2D 下列是重载乘法运算的函数原型声明,其中错误的是 A myclass operator*(double,double); B myclass operator*(double,myclass); C myclass operator*(myclass,double); D myclass operator*( myclass , myclass); 8
分享到:
收藏