一、选择题
(1)下列关于栈叙述正确的是 A)栈顶元素最先能被删除 B)栈顶元素最后才能被删除 C)栈底元素永远不能被删除 D)以上三种说法都不对 (2)下列叙述中正确的是
A)有一个以上根结点的数据结构不一定是非线性结构 B)只有一个根结点的数据结构不一定是线性结构 C)循环链表是非线性结构 D)双向链表是非线性结构
(3)某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层) A)3 B)4 C)6 D)7
(4)在软件开发中,需求分析阶段产生的主要文档是 A)软件集成测试计划 B)软件详细设计说明书 C)用户手册
D)软件需求规格说明书
(5)结构化程序所要求的基本结构不包括 A)顺序结构 B)GOTO跳转 C)选择(分支)结构 D)重复(循环)结构 (6)下面描述中错误的是
A)系统总体结构图支持软件系统的详细设计 B)软件设计是将软件需求转换为软件表示的过程 C)数据结构与数据库设计是软件设计的任务之一 D)PAD图是软件详细设计的表示工具 (7)负责数据库中查询操作的数据库语言是 A)数据定义语言 B)数据管理语言 C)数据操纵语言 D)数据控制语言
(8)一个教师可讲授多门课程,一门课程可由多个教师讲授。则实体教师和课程间的联系是 A)1:1联系 B)1:m联系 C)m:1联系 D)m:n联系
(9)有三个关系R、S和T如下:
则由关系R和S得到关系T的操作是 A)自然连接 B)交 C)除 D)并
(10)定义无符号整数类为UInt,下面可以作为类UInt实例化值的是 A)-369 B)369 C)0.369
D)整数集合{1,2,3,4,5}
(11)为了提高函数调用的实际运行速度,可以将较简单的函数定义为 A)内联函数 B)重载函数 C)递归函数 D)函数模板
(12)若AA为一个类,a为该类的非静态数据成员,在该类的一个成员函数定义中访问a时,其书写格式为 A)a B)AA.a C)a() D)AA::a()
(13)当派生类从一个基类保护继承时,基类中的一些成员在派生类中成为保护成员,这些成员在基类中原有的访问属性是 A)任何 B)公有或保护 C)保护或私有 D)私有
(14)若要对Data类中重载的加法运算符成员函数进行声明,下列选项中正确的是 A)Data+(Data);
B)Data operator+(Data); C)Data+operator(Data); D)operator+(Data,Data);
(15)下列关于函数模板的描述中,正确的是 A)函数模板是一个实例函数
B)使用函数模板定义的函数没有返回类型 C)函数模板的类型参数与函数的参数相同
D)通过使用不同的类型参数,可以从函数模板得到不同的实例函数
(16) C++系统预定义了4个用于标准数据流的对象,下列选项中不属于此类对象的是 A)cout B)cin C)cerr D)cset
(17)Windows环境下,由C++源程序文件编译而成的目标文件的扩展名是 A)cpp B)exe C)obj D)lik
(18)字符串“a+b=12\\n\”的长度为 A)12 B)10 C)8 D)6
(19)有如下程序: #include
using namespace std; int main(){ int f,f1=0,f2=1; for(int i=3;i<=6;i++){ f=f1+f2; f1=f2;f2=f; }
cout< return 0; }
运行时的输出结果是 A)2 B)3 C)5
D)8
(20)有如下程序: #include
using namespace std; int main(){
int a[6]={23,15,,33,40,58}; int s1,s2; s1=s2=a[0]; for(int* p=a+1;p if(s1>*p) s1=*p; if(s2<*p) s2=*p; }
cout<< (21)有如下程序: #include using namespace std; void f1(int& x,int& y) {int z=x; x=y; y=z;} void f2(int x;int y) {int z=x; x=y; y=z;} int main(){ int x=10,y=26; f1(x,y); f2(x,y); cout< return 0; } 运行时的输出结果是 A)10 B)16 C)26 D)36 (22)有如下程序: #include using namespace std; class XA{ int a; public: static int b; XA(int aa):a(aa) {b++;} ~XA(){} int get(){return a;} }; int XA::b=0; int main(){ XA d1(2),d2(3); cout< return 0; } 运行时的输出结果是 A)5 B)6 C)7 D)8 (23)有如下程序: #include using namespace std; class Point{ int x,y; public: Point(int x1=0,int y1=0):x(x1),y(y1){} int get(){return x+y;} }; class Circle{ Point center; int radius; public: Circle(int cx,int cy,int r):center(cx,cy),raaius(r){} int get(){return center.get()+radius;} }; int main(){ Circle c(3,4,5); cout<< (24)若要对类BigNumber中重载的类型转换运算符long进行声明,下列选项中正确的是 A)operator long() const; B)operator long(BigNumber); C)long operator long() const; D)long operator long(BigNumber); (25)有如下函数模板定义: template T1 FUN(T2 n){return n*5.0;} 若要求以int型数据9作为函数实参调用该模板,并返回一个double型数据,则该调用应表示为 A)FUN(9) B)FUN<9> C)FUN(9) D)FUN<9>(double) (26)下列语句都是程序运行时的第1条输出语句,其中一条语句的输出效果与其他三条语句不同,该语句是 A)cout<<12345; B)cout<<12345; C)cout<<12345; D)cout< (27)下列关于析构函数的描述中,错误的是 A)析构函数可以重载 B)析构函数由系统自动调用 C)每个对象的析构函数只被调用一次 D)每个类都有析构函数 (28)下列关于构造函数的描述中,错误的是 A)构造函数名与类名相同 B)构造函数可以有返回值 C)构造函数可以重载 D)每个类都有构造函数 (29)若PAT是一个类,则程序运行时,语句“PAT(*ad)[3];”调用PAT的构造函数的次数是 A)0 B)1 C)2 D)3 (30)下列描述中,错误的是 A)公有继承时基类中的公有成员在派生类中仍是公有成员 B)公有继承时基类中的保护成员在派生类中仍是保护成员 C)保护继承时基类中的公有成员在派生类中仍是公有成员 D)保护继承时基类中的保护成员在派生类中仍是保护成员 (31)生成派生类对象时,派生类构造函数调用基类构造函数的条件是 A)无需任何条件 B)基类中显式定义了构造函数 C)派生类中显式定义了构造函数 D)派生类构造函数明确调用了基类构造函数 (32)下列关于派生类和基类的描述中,正确的是 A)派生类成员函数只能访问基类的公有成员 B)派生类成员函数只能访问基类的公有和保护成员 C)派生类成员函数可以访问基类的所有成员 D)派生类对基类的默认继承方式是公有继承 (33)有如下类模板定义: template class BigNumber{ long n; public: BigNumber(T i):n(i){} BigNumber operator+(BigNumber b){ return BigNumber(n+b.n); } }; 己知b1、b2是BigNumber的两个对象,则下列表达式中错误的是 A)bl+b2 B)b1+3 C)3+b1 D)3+3 (34)下列关于文件流的描述中,正确的是 A)文件流只能完成针对磁盘文件的输入输出 B)建立一个文件流对象时,必须同时打开一个文件 C)若输入流要打开的文件不存在,将建立一个新文件 D)若输出流要打开的文件不存在,将建立一个新文件 (35)有如下程序: #include using namespace std; class Pair{ int m,n; public: Pair(int j,int k):m(j),n(k){} int get() {return m;} int get() const {return m+n;} }; int main(){ Pair a(3,5); const Pair b(3,5); cout+a.get()< return 0; } 运行时的输出结果是 A)33 B)38 C)83 D)88 二、填空题 (1)有序线性表能进行二分查找的前提是该线性表必须是 【1】 存储的。 (2)一棵二叉树的中序遍历结果为DBEAFC,前序遍历结果为ABDECF。则后序遍历结果为 【2】 。 (3)对软件设计的最小单位(模块或程序单元)进行的测试通常称为 【3】 测试。 (4)实体完整性约束要求关系数据库中元组的 【4】 属性值不能为空。 (5)在关系A(S,SN,D)和关系B(D,CN,NM)中,A的主关键字是S,B的主关键字是D, 则称 【5】 是关系A的外码。 (6)若有定义语句“int x=10,y=20,z=20;”,则表达式x>z&&y==z的值为 【6】 。 (7)有如下语句序列: int x=-10;while(++x){ } 运行时while循环体的执行次数为 【7】 。 (8)有如下语句序列: int arr[2][2]={{9,8},{7,6}}; int *p=arr[0]+1; cout<<*p< 运行时的输出结果是 【8】 。 (9)函数fun的功能是将一个数字字符串转换为一个整数,请将函数补充完整。 int fun(char *str){ int num=0; while(*str){ num*=10; num+= 【9】 ; str++; } return num; } (10)若要将函数“void FriFun();”声明为类MyClass的友元函数,则应在类MyClass的定义中加入语句 【10】 。 (11)下列程序的输出结果为012,请根据注释将横线处的缺失部分补充完整。 #include using namespace std; class Test{ public: Test(int a) {data=a;} ~Test() {} void print(){cout< private: int data; }; int main(){ Test t[3]={ 【11】 };//对有3个元素的Test类对象数组t初始化t[i].print(); for(int i=0;i<3;i++) return 0; } (12)请在横线处填写派生类Derived的继承方式,使得程序的输出结果为Base。 #include using namespace std; class Base{ public: void print(){cout<<\"Base\";} }; class Derived: 【12】 Base{}; int main(){ Derived d; d.print(); return 0; } (13)下列程序的输出结果为1 2.3 2 4.6,请将横线处的缺失部分补充完整。 #include using namespace std; class Base{ public: Base(int a):idata(a){} void print(){cout<<'';} private: int idata; }; class Derived:public Base{ public: Derived(int a;double b): 【13】 ,ddata(b){} void print(){Base::print();cout<<'';} private: double ddata; }; int main(){ Derived dl(1,2.3),d2(2,4.6); d1.print(); d2.print(); return 0; } (14)下列程序的输出结果为-5/8 -3/4,请将横线处的缺失部分补充完整。 #include using namespace std; class Fraction{ //“分数”类 public: Fraction(double a,double b):num(a),den(b){} ~Fraction(){} //重载取负运算符“-”,返回一个分数对象,其分子是原来分子的相反数。 Fraction operator-(){ 【14】 return f; } void print(){ cout<<' < double num; //分子 double den; //分母 }; int main(){ Fraction f1(5;8),f2(3,4); (-f1).print();(-f2).print(); return 0; } (15)函数Min的功能是返回具有n个元素的数组array中的最小值。请将横线处的缺失部分补充完整,使得程序的输出结果为1.24。 #include using namespace std; template T Min(T* array,int n){ T min=array[0]; for(int i=1;i if(array[i] return min; } int main(){ double arr[8]={5.2,48.45,41.01,42,51.2,1.24,14.12,42}; cout<< 【15】 ; return 0; } 2011年3月计算机二级C++笔试答案 (网友回忆,非标准答案,仅供参考!) 选择题 ABDDB ACDCB CDAAA ADCAD BDBCD CDCCA BBCDB CDDCB 填空题 顺序 DEBFCA 单元 主键 D 3 1217 0,9 4 20,0 i-1 double avg (double a,double b) 13715 emodew 123456 2011年9月全国计算机等级考试二级笔试试卷 C++语言程序设计 (考试时间90分钟,满分100分) 一、选择题(每小题2分,共70分) 下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。 (1)下列叙述中正确的是( )。 A)算法就是程序 B)设计算法时只需要考虑数据结构的设计 C)设计算法时只需要考虑结果的可靠性 D)以上三种说法都不对 (2)下列关于线性链表的叙述中,正确的是( )。 A)各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致 B)各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续 C)进行插入与删除时,不需要移动表中的元素 D)以上三种说法都不对 (3)下列关于二叉树的叙述中,正确的是( )。 A)叶子结点总是比度为2的结点少一个 B)叶子结点总是比度为2的结点多一个 C)叶子结点数是度为2的结点数的两倍 D)度为2的结点数是度为1的结点数的两倍 (4)软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是( )。 A)学生成绩管理系统 B)C语言编译程序 C)UNIX操作系统 D)数据库管理系统 (5)某系统总体结构图如下图所示: 该系统总体结构图的深度是( )。 A)7 B)6 C)3 D)2 (6)程序调试的任务是( )。 A)设计测试用例 B)验证程序的正确性 C)发现程序中的错误 D)诊断和改正程序中的错误 (7)下列关于数据库设计的叙述中,正确的是( )。 A)在需求分析阶段建立数据字典 B)在概念设计阶段建立数据字典 C)在逻辑设计阶段建立数据字典 D)在物理设计阶段建立数据字典 (8)数据库系统的三级模式不包括( )。 A)概念模式 B)内模式 C)外模式 D)数据模式 (9)有三个关系R、S和T如下: 则由关系R和S得到关系T的操作是( )。 A)自然连接 B)差 C)交 D)并 (10)下列选项中属于面向对象设计方法主要特征的是( )。 A)继承 B)自项向下 C)模块化 D)逐步求精 (11)在对函数进行原型声明时,下列语法成分中,不需要的是()。 A)函数返回类型 B)函数参数列表 C)函数名 D)函数体 (12)下列关于this指针的描述中,正确的是()。 A)类的成员函数都有this指针 B)类的友元函数都有this指针 C)任何与类相关的函数都有this指针 D)类的非静态成员函数都有this指针 (13) (14)为类Matrix重载下列运算符时,只能作为Matrix类成员函数重载的运算符是()。 A)+ B)= C)<< D)++ (15)下列关于模板的描述中,错误的是()。 A)类模板的成员函数都是模板函数 B)函数模板是一种参数化类型的函数 C)满足一定条件时可以省略模板实参 D)模板形参只能由关键字typename声明 (16)要利用C++流实现输入输出的各种格式控制,必须在程序中包含的头文件是()。 A)fstream B)istreara C)ostream D)iomanip (17)下列选项中,不是C++关键字的是()。 A)class B)functi013 C)friend D)virtual (18)若有定义语句“int i=2,j=3;”,则表达式i/j的结果是()。 A)0 B)0.7 C)0.66667 D)0.66666667 (19) (31) A)1234 B)2134 C)12 D)21 (32)有如下程序: A)OI B)21 C)03 D)23 二、填空题(每空2分,共30分) (1)数据结构分为线性结构与非线性结构,带链的栈属于 【1】 。 (2)在长度为n 的顺序存储的线性表中插入一个元素,最坏情况下需要移动表中 【2】 个元素。 (3)常见的软件开发方法有结构化方法和面向对象方法。对某应用系统经过需求分析建立数据流图(DFD),则应采用 【3】 方法。 (4)数据库系统的核心是 【4】 。 (5)在进行关系数据库的逻辑设计时,E-R图中的属性常被转换为关系中的属性,联系通常被转换为 【5】 。 (6)若有“int x=15,y=20”,则执行表达式y-=x++后,表达式x+y的值为【6】。 (7)执行语句序列“int k=0;do k++;while(k*k<20);”后,k的值为【7】, (8)下列程序运行时的输出结果是【8】。 (9) 下列程序运行时的输出结果是【9】。 (10)若Xcs是一个类,该类中具有一个函数体为空的不带参数的构造函数,此构造函数的类外定义为 【10】 。 (11)有如下程序: 运行时的输出结果是【11】。 (12)有如下两个类声明 2010年9月全国计算机二级C++笔试试题:文字版 一、选择题(每小题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)类之间共享属性和操作的机制 (7)层次型、网状型和关系型数据库划分原则是 A)记录长度 B)文件的大小 C)联系的复杂程度 D)数据之间的联系方式 (8)一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员、与实体计算机之间的联系是 A)一对一 B)一对多 C)多对多 D)多对一 (9)数据库设计中反映用户对数据要求的模式是 A)内模式 B)概念模式 C)外模式 D)设计模式 (10)有三个关系R、S和T如下: 则由关系R和S得到关系T的操作是 A)自然连接 B)交 C)投影 D)并 (11)下列关于函数参数的叙述中,正确的是 A)在函数原型中不必声明形参类型 B)函数的实参和形参共享内存空间 C)函数形参的生存期与整个程序的运行期相向 D)函数的形参在函数被调用时获得初始值 (12)下列关于对象初始化的叙述中,正确的是 A)定义对象的时候不能对对象进行初始化 B)定义对象之后可以显式地调用构造函数进行初始化 C)定义对象时将自动调用构造函数进行初始化 D)在一个类中必须显式地定义构造函数实现初始化 (13)下列关于基类和派生类关系的叙述中,正确的是 A)每个类最多只能有一个直接基类 B)派生类中的成员可以访问基类中的任何成员 C)基类的构造函数必须在派生类的构造函数体中调用 D)派生类除了继承基类的成员,还可以定义新的成员 (14)下列关于赋值运算符“=”重载的叙述中,正确的是 A)赋值运算符只能作为类的成员函数重载 B)默认的赋值运算符实现了“深层复制”功能 C)重载的赋值运算符函数有两个本类对象作为形参 D)如果己经定义了复制(拷贝)构造函数,就不能重载赋值运算符 (15)下列关于模板的叙述中,正确的是 A)如果一个类中存在纯虚函数,这个类就是类模板 B)函数模板不能有形式参数表 C)类模板是一种参数化类型的类,是类的生成器 D)类模板中不能包含构造函数 (16)下列关于C++预定义流对象的叙述中,正确的是 A)cin是C++预定义的标准输入流对象 B)cin是C++预定义的标准输入流类 C)cout是C++预定义的标准输入流对象 D)cout是C++预定义的标准输入流类 (17)下列选项中,正确的C++标识符是 A)6_group B)group~6 C)age+3 D)_group_6 (18)下列选项中,正确的C++表达式是 A)counter++3 B)element3+ C)a+=b D)‘a‘=b (19)下列循环语句中有语法错误的是 A)int i; for( i=1; i<10;i++)cout<<‘*‘; B)int i,j;for(i=1,j=0;i<10;i++,j++)cout<<‘*‘; C)int i=0;for(;i<10;i++)cout<<‘ *‘; D)for(1)cout<<‘*‘; (20)下列定义语句中,错误的是 A)int px*; B)char*acp[10]; C)char(*pac)[10]; D)int(*p)(); (21)下列函数原型声明中,错误的是 A)int fnction(int m,int n); B)int function(int,int); C)int function(int m=3,int n); D)int function(int &m,int&n); (22)若MyClass为一个类,执行“MyClass a[4],*p[5];”语句时会自动调用该类构造函数的次数是 A)2 B)5 C)4 D)9 (23)若在表达式y/x中,“/”是作为成员函数重载的运算符,则该表达式还可以表示为 A)x.Operator/(Y) B)operator/(x,Y) C)Y.operator/(x) D)operator/(y,x) (24)若要重载+、=、<<、=和[]运算符,则必须作为类成员重载的运算符是 A)+和= B)=和<< C)==和<< D)=和[] (25)有函数模板声明和一些变量定义如下: template (26)有如下语句序列: char str[10];cin>>str; 当从键盘输入”I love this game”时,str中的字符串是 A)\"I love this game\" B)\"I love thi\" C)\"I love\" D)\"I\" (27)有如下程序: #include friend double distance(const Point &p); //p距原点的距离 Point(int xx=0,int yy=0):x (xx),Y(YY){}//① private: Int x,Y; }; double distance(const Point &p) { //② return sqrt(p.x*p.x+p.Y*p.Y); } int main(){ Point p1(3,4); cout< (28)有如下程序: #include using namespace std; class CD{ public: ~CD(){cout<<’C’;} private: char name[80]; }; int main(){CD a,*b,d[2];return 0;} 运行时的输出结果是 A)CCCC B)CCC C)CC D)C (29)某类中有一个无参且无返回值的常成员函数Show,则正确的Show函数原型是 A)const void Show(); B)void const Show(); C)void Show()const; D)void Show(const); (30)若已定义了类Vehicle,则下列派生类定义中,错误的是 A)class Car:Vehicle{/*类体略*/}, B)class Car:public Car{/*类体略*/}; C)class Car:public Vehicle{/*类体略*/}; D)class Car:virtual public Vehicle{/*类体略*/}; (31)有如下程序: #include void setTitle(char*str){strcpy(title,str);} protected: char type[10]; private: char title[20]; }; class Jazz:public Music{ public: void set(char* str){ strcpy(type,\"Jazz\"); //① strcpy(title,str); //② } }; 下列叙述中正确的是 A)程序编译正确一 B)程序编译时语句①出错 C)程序编译时语句②出错 D)程序编译时语句①和②都出错 (32)有如下程序: #include virtual void Display()=0; }; class Piano:public Instrument{ public: void Display(){/*函数体程序略*/} }; int, main(){ Instrument s; Instrument*p=0; //...; return 0; } 下列叙述中正确的是 A)语句“Insturment *p=0;”编译时出错 B)语句“Instruments;”编译时出错 C)类Piano中的Display函数不是虚函数 D)类Instrumen七是一个虚基类 (33)有类定义如下:气 class Type { public: Type (int i=0); Tvpe operator -(int); friend Type operator + (Type, Type ); private: int val; 若有对象定义Type cl;则下列语句序列中,错误的是 A)Type(3)+c1; B)cl+Type(3); C)3-cl; D)c1-3; (34)有如下程序: #include Cout< (35)有如下程序: #include Book(char* t=\"\"){strcpy(titie,t); } _____________________________ private: Char title[40]; }; class Novel:public Book{ public: Novel(char*t=\"\"):B00K (t){} char*Category()const { return” \"文学\" } }; int main(){ Book*pb; pb=new Novel(); Cout< 若程序运行时输出结果是“文学”,则划线处缺失的语句是 A)char* Category(); B)char*Category()const; C)virtual char*Category()const; D)virtual char*Category()const=0; 二、填空题(每空2分,共30分) 请将每一个空的正确答案写在答题卡【1】-【15】序号的横线上,答在试卷上不得分。注意:以命令关键字填空的必须拼写完整。 (1)一个栈的初始状态为空。首先将元素5,4,3,2,1 依次入栈,然后退栈一次,再将元素A,B,C,D依次入栈,之后将所有元素全部退栈,则所有元素退栈(包括中间退栈的元素)的顺序为__【1】__。 (2)在长度为n的线性表中,寻找最大项至少需要比较___【2】___次。 (3)一棵二叉树有10个度为1的结点,7个度为2的结点,则该二叉树共有__【3】___个 结点。 (4)仅由顺序、选择(分支)和重复(循环)结构构成的程序是_【4】__程序。 (5)数据库设计的四个阶段是:需求分析,概念设计,逻辑设计和_【5】_。 (6)如果一个派生类只有一个直接基类,则该类的继承方式称为_【6】_继承;如果一个派生类同时有多个直接基类,则该类的继承方式称为_【7】_继承。 (7)运算符“+”允许重载为类成员函数,或者非成员函数。若用operator+(c1, c2)这样的表达式来使用运算符“+”,应将“+”重载为_【8】_函数。 (8)下列程序的输出是3,请填充程序中的空缺,使该行形成一个运算符重载函数的定义。 #include MyNumber(int k):n(k){} _【9】_int()const{return n,} }; int main(){ MyNumber numl(3); Cout< using namespace std; class Base{ public: int m,n; Base(int i,int j):m(i),n(j){} }; class Derived:public Base{ public: int m, k; Derived(int i,int j):Base(i,j),m(i+1),k(j+1){} }; int main(){ Derived d(1;5); Cout< A(char *aa){//把aa所指字符串复制给a所指向的存储空间 a=__【11】__char[strlen(aa)+1]; strcpy(a,aa); } ~A(){delete[]a;} }; (11)根据程序中的注释将下列缺失部分补充完整。 class Point{ int x, y; //点的x和y坐标 public: Point(int xx=0,int yy=。):x(xx),y(yy){} }; class Circle{ Point center;//圆心位置 int radius; //半径 public: //利用cx和cy分别初始化圆心的x和y坐标 Circle(int cx;int cy,int r):__【12】__,radius(r){} void area(){cout<<3.14159*radius*radius< Base(int b):x(b){} virtual void display(){cout< Derived(int d):Base(d),y(d){} void display(){cout< Base b(1);Derived d(2); Base*p=&d; b .display();d.display();p一>display(); return 0; } (13)一个双目运算符作为类的成员函数重载时,重载函数的参数表中有__【14】__个参数。 (14)派生类中的成员函数可以直接访问基类中的公有成员和__【15】__成员。 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- oldu.cn 版权所有 浙ICP备2024123271号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务