全国2006年1月高等教育自学考试面向对象程序设计试题
200601高等教育程序设计

全国2006年1月高等教育自学考试面向对象程序设计试题课程代码:02328一、单项选择题(本大题共10小题,每小题2分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.面向对象程序设计中的数据隐藏指的是()A.输入数据必须输入保密口令B.数据经过加密处理C.对象内部数据和代码合并在一起D.对象内部数据结构的不可访问性2.在C++中,编写一个内联函数Fun,使用int类型的参数,求其平方并返回,返回值也为int类型,下列定义正确的是()A.int Fun(int x){return x*x;}B.inline int Fun(int x){return x*x;}C.int inline Fun(int x){return x*x;}D.int Fun(int x){inline return x*x;}3.下面关于重载函数的叙述中正确的是()A.重载函数必须具有不同的返回值类型B.重载函数的形参个数必须不同C.重载函数必须有不同的形参列表D.重载函数的函数名可以不同4.若有定义“int x=17;”,则语句“cout<<oct<<x;”的输出结果是()A.11B.0x11C.21D.0215.下列关于析构函数的描述中正确的是()A.析构函数可以重载B.析构函数可以是虚函数C.析构函数名与类名相同D.析构函数的返回类型为void6.下列关于纯虚函数的描述中,正确的是()A.纯虚函数是一种特殊的虚函数,它是个空函数B.具有纯虚函数的类称为虚基类C.一个基类中说明有纯虚函数,其派生类一定要实现该纯虚函数D.具有纯虚函数的类不能创建类对象7.下列关于运算符重载的描述中,正确的是()A.可以改变运算符的目数B.可以改变运算符的优先级C.可以改变运算符的结合性D.可以改变运算符的功能8.要将类A说明是类B的虚基类,正确的描述是()A.class virtual B:public AB.class B:virtual public AC.virtual class B:public AD.class B:public A virtual9.下面关于静态成员的描述中,正确的是()A.静态数据成员是类的所有对象共享的数据B.类的每个对象都有自己的静态数据成员C.类的不同对象有不同的静态数据成员值-第1 页共12 页D.静态数据成员不能通过类的对象访问10.假设Sample是个类,则语句“Sample a[2],*p[3];”调用构造函数的次数为()A.0 B.2C.3D.5二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
C++面向对象程序设计考试试卷(详细讲解)(1)

C++面向对象程序设计考试试卷(详细讲解)(1)C++面向对象程序设计考试试卷(详细讲解)一、单项选择题(共20题,每题1分,共20分)1、下列关于C++标识符的命名不合法的是 C 与C#一样A. PadB. name_1C. A#bcD. _a122、若有以下类型标识符定义:()Dint x=2; char w='a'; float y=23.45f; double z=45.6712;则表达式w*x+y-z的结果类型是A. floatB. charC. intD. double6、对重载函数形参的描述中,错误的是 D 重载是重点A. 参数的个数可能不同B. 参数的类型可能不同C. 参数的顺序可能不同D. 参数的个数、类型、顺序都相同,只是函数的返回值类型不同7、以下能正确定义数组并正确赋初值的语句是 DA. int N=5,b[N][N];B. int a[2]={{1},{3},{4},{5}};C. int c[2][]={{1,2},{3,4}};D. int d[3][2]={{1,2},{3,4}};8、下列给字符数组进行的初始化中,不正确的是 DA. char s1[]="abcd";B. char s2[3]={'x','y','\0'};C. char s3[]={'a','x','y','\0'};D. char s4[6]={"xyz","mnp"};9、通常的拷贝构造函数的参数是 CA.某个对象名 B.某个对象成员名C.某个对象的引用 D.某个对象的指针名10、关于构造函数特点的描述中,错误的是 AA. 定义构造函数必须指出类型(构造函数特点是无返回类型)B. 构造函数的名字与该类的类名相同C. 一个类中可定义0至多个构造函数(不写构造函数,系统会自动生成一个空的构造函数)D. 构造函数是一种成员函数11、下面程序的运行结果为 C#includeint add(int a,int b);void main(){extern int x,y;cout<<add(x,y)<<endl;< p="">}int x=20,y=5;int add(int a,int b){int s=a+b;return s;}A.20 B.5 C.25 D.编译会提示出错信息12、关于常成员的描述中,错误的是 BA. 常成员包含常数据成员和常成员函数两种B. 常数据成员必须是公有的C. 常数据成员要使用构造函数成员初始化列表进行初始化D. 常对象只能调用它的常成员函数,不能调用其它的成员函数13、关于友元函数的描述中,错误的是 BA. 友元函数不是成员函数B. 友元函数只能访问类中私有成员C. 友元函数破坏隐藏性,尽量少用D. 友元函数说明在类体内,使用关键字friend14、如果有int x,*p; float y,*q;则下面操作正确的是 CA.p=x B.p=qC.p=&x D.p=&y16、若数组名作实参而指针变量作形参,函数调用时实参传给形参的是 DA. 数组的长度B. 数组第一个元素的值C. 数组所有元素的值D.数组第一个元素的地址17、对于动态分配内存空间描述正确的是 DA.使用new运算符分配的内存空间的长度必需是常量B.delete运算符可以释放动态的存储空间和静态的存储空间C.由new分配的内存空间是不连续的D.delete运算符只能释放由new分配的动态存储空间18、能够释放对象所占资源的是() AA.析构函数 B.数据成员C.构造函数 D.静态成员函数19、虚函数的定义是在基类中进行的,定义时需要冠以关键字 CA.static B.frendC.virtual D.public20、在C++中串流类是在头文件strstrea.h中定义的,下列不属于串流类的是) C A.strstream B.ostrstreamC.ofstream D.istrstream二、填空题(共9题16空,每空1分,共16分)1、函数重载时,编译系统会根据__形参的类型__ 或__形参的个数__ 来区分。
《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案4

《面向对象程序设计JA V A语言程序设计》期末考试试题及部分答案1一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。
1.下列语句序列执行后,k 的值是( B )。
int m=3, n=6, k=0;while( (m++) < ( -- n) ) ++k;A) 0 B) 1 C) 2 D) 32.设i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( B )。
A) i = i + 2 B) a[0] = 7;C) i++ - --j; D) a(0) = 66;3.Java语言的类间的继承关系是( B )。
A) 多重的B) 单重的C) 线程的D) 不能继承4.设有定义int i = 6 ;,则执行以下语句后,i 的值为( C )。
i += i - 1;A) 10 B) 121 C) 11 D) 1005.下列选项中,用于在定义子类时声明父类名的关键字是( C )。
A)interface B) package C) extends D) class6.若已定义byte[ ] x= {11,22,33,-66} ;其中0≤k≤3,则对x数组元素错误的引用是( C )。
A) x[5-3] B) x[k] C) x[k+5] D) x[0]7.下列语句序列执行后,ch1 的值是( B )。
char ch1='A',ch2='W';if(ch1 + 2 < ch2 ) ++ch1;A) ‘A' B) ‘B' C) ‘C' D) B8.下列语句序列执行后,i 的值是( D )。
int i=8, j=16;if( i-1 > j ) i--; else j--;A) 15 B) 16 C) 7 D) 89.下列语句序列执行后,k 的值是( C )。
(完整版)面向对象程序设计试卷及答案

考试试卷A(答案)面向对象程序设计注意事项:1。
请考生按要求在试卷装订线内填写姓名、学号和年级专业。
2. 请仔细阅读各种题目的回答要求,在规定的位置填写答案。
3。
不要在试卷上乱写乱画,不要在装订线内填写无关的内容.4。
满分100分,考试时间为120分钟。
一。
单项选择(本大题共10小题,每小题3分,共30分)1. C#中每个int类型的变量占用( B )个字节的内存。
(A)8 (B)4 (C)2 (D)12。
面向对象的特点是( A )(A)封装、继承、多态(B)抽象、封装、多态(C)抽象、继承、封装(D)抽象、多态、重载3。
C#控制台程序的主入口点是( C )(A) Page_Load函数(B)Run函数(C)Main函数(D)Form_Load函数4。
引用类型存储在( B )中。
(A)堆栈(B)堆内存(C)队列(D)列表5. 在C#中,表示一个字符串的变量应使用以下哪条语句定义( B )(A)CString str (B)string str(C)Dim str as string (D)char *str6。
在中,用来与数据源建立连接的对象是( A )。
(A)Connection对象(B)Command对象(C)DataAdapter对象(D)DataSet对象7. 在类的定义中,类的( B )描述了该类的对象的行为特征.(A)类名(B)方法(C)所属的名字空间(D)私有域8. 如果未显式赋值,则将整型值( B )赋给枚举中的第一个元素。
(A)1 (B)0 (C)2 (D)39. float类型的值可以隐式转换成( C )类型的值而保持值不被改变。
(A)char (B)long (C)double (D)int10。
在C#中,假设Class1是一个类,而IExample是一个接口,下面的( A )类声明是正确的。
(A)class Employee: Class1, IExample(B )class Employee : IExample , Class1(C )class Employee- Class1, IExample(D )class Employee: Class1/IExample二.判断题(本大题共5小题,每小题3分,共15分)1. C#中子类可以继承多个基类,也可以继承一个接口。
2006面向对象卷试题——

一、填空题(每题2分,共20分)1. 若y是x的引用,则对y的操作就是对_______的操作。
2. 执行________操作将释放由p所指向的动态分配的数组空间。
3. 以面向对象方法构造的系统,其基本单位是__________。
4. 每个对象都是所属类的一个__________。
5. 如果一个派生类只有一个惟一的基类,则这样的继承关系称为__________。
6.一个类的__________函数实现对该类对象的初始化功能。
7.一个类的__________函数通常用于实现释放该类对象中指针成员所指向的动态存储空间的任务。
8. 派生类的成员函数不能直接访问基类的 ______成员。
9. 当保护继承时,基类的公有成员和保护成员在派生类中成为保护成员,派生类对象不能直接访问基类的 ____成员。
10. 引进虚基类的根本目的是为了消除____________。
一、填空题(每题2分,共20分)1.x2. delete []p3. 对象4. 实例5. 单继承6. 构造7. 析构8.私有9任何10. 二义性二、单选题(每题2分,共20分)1. 函数重载是指()。
A. 两个或两个以上的函数取相同的函数名,但形参的个数或类型不同B. 两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同C. 两个以上的函数名字不同,但形参的个数或类型相同D. 两个以上的函数取相同的函数名,并且函数的返回类型相同2. 若用数组名作为函数调用的实参,传递给形参的是()。
A. 数组的首地址B. 数组中第一个元素的值C. 数组全部元素的值D. 数组元素的个数3. 采用重载函数的目的是()。
A. 实现共享B. 减少空间C. 提高速度D. 使用方便,提高可读性4. 下列对引用的陈述中不正确的是()。
A. 每一个引用都是其所引用对象的别名,因此必须初始化B. 形式上针对引用的操作实际上作用于它所引用的对象C. 一旦定义了引用,一切针对其所引用对象的操作只能通过该引用间接进行D. 不需要单独为引用分配存储空间5. 关于封装,下列说法中不正确的是()。
通信06 面向对象程序设计 考试参考答案(A卷)

public:
int GetNum() { return Num;};
int GetAge() { return Age;};
Student(int Num0=1001, string Name0="张三", int Age0=20,char Sex0='1')
{
Num = Num0;
五、理解问答题(8分)
1.(3分,评分标准:前一份为1分,后一份为2分)
称为:虚函数。
作用:可以通过基类指针或引用来访问基类和派生类中的同名函数。
2.写出程序运行的结果。(3分,评分标准:正确给3分,格式不对扣1分)
25
10
3.(2分,评分标准:前一份为1分,后一份结果为1分)
程序能运行,其运行结果为:
}
int main()
{
Student s1,s2(1002,"李四",21,'1');
if (s1.GetAge()>s2.GetAge())
{
s1.display();
s2.display();
}
else
{
s2.display();
s1.display();
}
return 0;
}
2.答:三种继承的差异为:
(a)公用继承:基类的公用成员和保护成员在派生类中保持原有访问属性,其私有成员仍为基类私有。(2分)
(b)私有继承:基类的公用成员和保护成员在派生类中成了私有成员。其私有成员仍为基类私有。(3分)
(c)受保护的继承:基类的公用成员和保护成员在派生类中成了保护成员,其私有成员仍为基类私有。(3分)
2004级C++面向对象程序设计试题A参考答案

{ hitpoint-=harm; if(hitpoint<0) hitpoint=0; } int GetHP() const {return hitpoint;} int GetDemage() const {return demage;} int GetDefense() const {return defense;} protected: int hitpoint; int demage; int defense; }; bool Monster::fight(Monster & other) { while(true) { attack(other); if(other.GetHP()<=0) return true; other.attack(*this); if(hitpoint<=0) return false; } }
一、单选题(共 10 分,每题 1 分) 1. 已知 f1 和 f2 是同一类中的两个成员函数,若 f1 的实现代码体内不能调用 f2,则最可能 的情况是: (本题有点问题,D 的情况也可能出现,如 f1 是常成员函数,而 f2 不是) (A) f1 和 f2 都是静态函数 (B) f1 是静态的,f2 不是 (C) f1 不是静态的,f2 是静态的 (D) f1 和 f2 都不是静态函数 2. 一个对象所占的内存空间中可以保存下面哪类数据? (A) 静态数据成员 (B) 内联函数代码 (C) 所有成员函数的入口地址 (D) 虚函数表的入口地址 3.下面关于 new 和 delete 操作符的说法,哪个是不正确的: (A) 使用 new 操作符,可以动态分配全局堆中的内存资源。 (B) 用 new 申请的数组,必须用 delete[] 释放。 (C) 用 new 申请的空间,即使不调用 delete 释放掉,当程序结束时也会自动释放掉。 (D) 执行语句 A * p=new A[100];时,类 A 的构造函数会被调用 100 次。 4. 下列哪种函数可以是虚函数: (A) 自定义的构造函数 (B) 拷贝构造函数 (C) 静态成员函数 (D) 析构函数 5.C++的最小编译单位是: (A) 工程中每个.cpp 和.h 文件 (B) 工程中每个.cpp 文件 (C) 工程中每个.h 文件 (D) 工程中所有文件 6.下面表达式中不可能作为左值(赋值运算符左侧)的是: (A) a=b (B) *p (C) f(a,b) (D) &a 7.在实现函数 A& f(A & obj) 时,下面的哪一个表达式可以出现在 return 语句中? (A) new A( ) (B) obj (C) &obj (D) new A(obj) 8.判断类 A 的两个对象 a1 与 a2 是否是同一个对象的方法是: (A) 利用调试器,查看 a1 与 a2 各成员数据的值是否相等 (B) 重载 == 运算符,用它来判断各成员数据的值是否相等。 (C) 判断这两个对象的地址值是否相等。 (D) 比较创建时使用的构造函数的实参是否相同。 9.已知 obj 是一个对象,下面哪一个表达式是不可能出现的? (A) obj.100 (B) !obj (C) obj++ (D) obj,100
计06 面向对象程序设计 考试参考答案(A卷)

(1)写出程序运行的结果。(3分,评分标准:正确给3分)
c1<c2
(2)如果删除程序中的第11、17、18、19行,则程序编译时,在什么位置会出错?为什么?(3分,评分标准:答对前一份给2分,答对后一份给1分)
在24行会出错。
因为:if (c1>c2)中c1和c2是两个对象,要进行运算,必须重载运算符“>”。
Box(float L=1.0, float W=1.0, float H=1.0)
{
Length = L;
Width = W;
Height = H;
}
};
int main()
{
Bo b1.GetVolume();
v2 = b2.GetVolume();
if (v1>v2)
cout<<v1<<" "<<v2<<endl;
else
cout<<v2<<" "<<v1<<endl;
return 0;
}
六、编程题(18分,评分标准:写出类Box得8分,编出main()函数得10分,注意:程序的所有等价写法同样给分)
#include <iostream.h>
class Box
{
private:
float Length,Width,Height;
public:
float GetVolume() { return Length*Width*Height;};
60
25
60
25
3.程序3(10分,评分标准:前面con和后面des的输出每行0.5分,中间数字输出每行1分)
c++_面向对象程序设计考试试题1

考试试题纸(B 卷)《面向对象程序设计》课程计算机院(系)网络工程、计算机科学与技术班级考试时量 100分钟学生人数命题教师系主任交题时间:年月日考试时间:年月日1.一、简答题(每小题5分,共20分)1.什么是类?什么是对象?对象与类的关系是什么?2.构造函数和析构函数的主要作用是什么?他们各有什么特性?3.派生类构造函数和析构函数的执行顺序是怎样的?4.什么是虚函数?虚函数与函数重载有哪些相同点和不同点?2.二、选择题(每小题2分,共20分)1.假设已经有定义char *const pName=”Student”;下面的语句正确的是。
A.pName[3]=’t’; B. pName=”score”;C. pName=new char[5];D. pName=new char(‘p’);2.在下面有关对构造函数的描述中,正确的是。
A. 构造函数可以带有返回值B. 构造函数的名字与类名完全相同C. 构造函数必须带有参数4.构造函数必须定义,不能缺省3.在下面有关析构函数特征的描述中,错误的是。
A. 一个类中只能定义一个析构函数B. 析构函数名与类名完全相同C. 析构函数不能指定返回类型D. 析构函数不能带有参数4.假定AB为一个类,则执行“AB a(4) , b[3] , * p[2] ;”语句时,自动调用该类构造函数的次数为。
A. 3B. 4C. 6D. 95. 假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为。
A. AB operator+(AB &a,AB &b)B. AB operator+(AB &a)C. operator+(AB a)D. AB & operator+( )6. 假设定义了函数模版:template<class T>T max(T x, T y){ return (x>y)?x:y; }并定义了:int i;char c;那么下列错误的调用该模版的是。
面向对象程序设计复习题及参考答案

网络教育课程考试复习题及参考答案面向对象程序设计一、填空题:1.创建类的对象时,使用运算符___________给对象分配内存空间。
2.Java通过来区分重载函数。
3.在子类中使用保留字_ _可调用被子类覆盖的父类中的方法。
4.使用保留字可以从一个构造方法中调用同一个类的另一个构造方法。
5.抽象类用修饰符定义。
6.类的数据成员的访问权限修饰符一般为7.访问权限修饰符按照访问权限的大小从大到小分别为、、、。
8.定义类的构造方法不能有,其名称与名相同。
9.抽象方法是的特征是。
10.Java中的所有异常都是从继承来的。
11.对象引用中存储的内容是。
12.下列程序段执行后,String str1 = new String("Java");String str2 = new String("Java");if (str1.equals(str2)) {System.out.println("They are equal");} else {System.out.println("They are not equal");}输出结果为:。
13.下面循环执行后的sun值为int count =0, sum = 0;while ( count <10 ) {sum += count;count ++;}14.Java语言中关键字_ _表示双精度类型。
15.保留字_ _用于导入包中的类到程序中,供程序中使用。
16.Java语言中继承是用保留字表示。
17.面向对象程序设计中,类是指。
18.对象包含和。
19.若有类定义:class B extends A{…}则类B是类A的_ 。
20.Java语言中, 通常把可能发生异常的方法调用语句放到try块中,并用紧跟其后的_ 块来捕获和处理异常。
21.多态是指。
22.声明常量时使用修饰符。
23.Java中异常抛出使用保留字。
面向对象程序设计复习题(附参考答案)

【题目】【题型:单选题】【难度:中】【考核能力:理解】【漏选得分:是】【自动判分:是】【应用类别:终考】【特殊标签:】机器语言中的指令编码为()编码。
[A.]二进制[B.1符号[c.1十进制[D.]数字【答案】A【知识点】01106.1.1.1【解析】无【题目】【题型:单选题】【难度:中】【考核能力:理解】【漏选得分:是】【自动判分:是】【应用类别:终考】【特殊标签:】JaVa语言的主要特点不包括()。
[A.]面向对象[B.]自动垃圾回收[CJ处理文件[D.]可移植性【答案】C【知识点】01106.1.1.1【解析】无【题目】【题型:单选题】【难度:中】【考核能力:理解】【漏选得分:是】【自动判分:是】【应用类别:终考】【特殊标签:】Java开发工具包简称为()。
[A.]JKD[B.]JRK[C.]JDK[D.]JRE【答案】C【知识点】01106.1.1.1【解析】无【题目】【题型:单选题】【难度:中】【考核能力:理解】【漏选得分:是】【自动判分:是】【应用类别:终考】【特殊标签:】具有相同属性和服务的一组对象的模板称为()。
1B.]类[c.1代码[D.]概念【答案】B【知识点】01106.1.1.1【解析】无【题目】【题型:单选题】【难度:中】【考核能力:理解】【漏选得分:是】【自动判分:是】【应用类别:终考】【特殊标签:】类是对具有共同属性和行为的对象的抽象描述,每个对象称为该类的一个()。
[A.]产品[B.1元素[c1成分[D.]实例【答案】D【知识点】01106.1.1.1【解析】无【题目】【题型:单选题】【难度:中】【考核能力:理解】【漏选得分:是】【自动判分:是】【应用类别:终考】【特殊标签:】Java是一门()语言。
[A.]机器[B.]汇编[C.)面向过程的高级[D.]面向对象的高级【答案】D【知识点】01106.1.1.1【解析】无【题目】【题型:单选题】【难度:中】【考核能力:理解】【漏选得分:是】【自动判分:是】【应用类别:终考】【特殊标签:】使用JDK编译JaVa程序时使用的命令是()。
计面向对象程序设计考试试卷(A卷)参考解答

姓名
2. 程序 2(10 分) #include <iostream.h> //Toy-car class CToy { public: CToy( ) { cout<<"Create CToy."<<endl;} CToy(char color) {cout<<"Create CToy:"<<color<<endl;} ~CToy( ) {cout<<"delete CToy."<<endl; } }; class CCar { public: CCar(int Tire=4) {cout<<"create CCar:"<<Tire<<endl;} ~CCar( ){cout<<"delete CCar."<<endl; } }; class CToy_Car:public CToy,public CCar { public: CToy_Car(int p ):member(), CCar(p ),CToy() {cout<<"create CToy_Car."<<endl;} ~CToy_Car( ){cout<<"delete CToy_Car."<<endl; private: CToy member; }; void main( ) { CToy_Car toyc(4); }
6.在定义二维数组时,语句“int Sum[][2]={{1,2},{3},{}}; ”是正确地.(
9. 在编程中,有了面向对象地程序设计方法后,就不要用面向过程地程序设计方法了. ( 10. 类中地静态成员数据为该类地所有成员所共享,在初始化后,它地值不能被修改.(
2006年(上)高等教育自学考试全国统一命题考试计算机软件基础(一)试卷及参考答案

2006年(上)高等教育自学考试全国统一命题考试计算机软件基础(一)试卷及参考答案第一部分选择题一、单项选择题(本大题共40小题。
每小题l 分,共40分)在每小题列出的四个备选项中只有一个是符合题目要求的。
请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.已知:int a=3,b=5,t ;要将a 和b 中的数值进行交换,错误的C 语言程序段是 ( )A .a=a+b ;b=a-b ;a=a-b ;B .t=a ;a=b ;b=t ;C .t=a ;b=a ;a=t ;D .t=b .b=a ;a=t ; 2.关于C 语言程序中的#include<math .h>,错误的描述是 ( ) A .#include 是C 语言的编译命令 B .在程序中该行不需要分号 C .是把math .h 包含进来的意思 D .math .h 是一个函数 3.用c 语言表示算式,表示错误的是 ( )A .2*a*d /c /bB .2*a*d /b /cC .2*a*d /b*CD .a*d /e /b*2 4.下列C 语言程序段执行后,y 的值是 ( ) double x=1,y ; y=x+3/2;A .1B .2C .2.OD .2.5 5.下列程序的运行结果是( )A .-lB .0C .1D .86.C 语言中,已知int a ;float b ;调用下列函数时,将30和5.5分别赋给变量a 和b,则正确的( )7.下列程序的运行结果是( )A .003B .012C .103D .1128.已知int x=100,y=200;则下列C 语言语句的输出结果是( ) printf(”%dft ,(x ,y));A .100B .200C .100 200D .格式符个数不够,输出不确定的值 9.C 语言中,已知int a ,b=5;给a 提供数据的错误语句是 ( )A .a='c':B .seanf(”%d”,&a);C .a=(b+6)/3;D .10+2=a ; 10.C 语言中,对于逻辑表达式a||b||C 正确的解释是 ( )A .只要a 为非零,就不再判断b 和CB .如果a 为非零,还要继续判断b 和C C .先判断b 和c 逻辑关系,再判断a 和它们的关系D .只要a 为零,就不必判断b 和C 11.C 语言中,错误的叙述是 ( )A .a>b&&c>d 等价于(a>b)&&(c>d)B .!b==C||d<a 等价于((!b)==c)||(d<a)C .a+b>c&&x+y<b 等价于((a+b)>c)&&((x+y)<b)D .a=!b>d&&j-3等价于a=!(b>d)&&j-3 12.下列C 语言程序段的输出结果是( )A .a=0B .a=0defaultC .a=0a=1defaultD .default 13.C 语言中,下列运算符优先级最低的是( ) A .<= B .!= C .< D .> 14.C 语言中,多重循环是指 ( )A .程序中有2个以上的循环语句B .循环体中有2个以上的语句C .循环体中包含了另一个循环语句D .循环次数多 15.对下列C 语言程序段中do —while 循环的正确描述是 ( ) x=-l : do{x=x*x ; )while(!x);A .循环体执行1次B .循环体执行2次C .是无限循环D .程序段中有语法错误 16.下列程序的运行结果是( )A .x=4,y=4,z=1B .x=5,y=4,z=1C .x=5,y=4,z=3D .x=5,y=5,z=1 17.已知int a ,x ,y ;有语法错误的C 语言语句是 ( ) A .while(x)y++; B .while(x+y=O)a++;C .while(x<y);D .while(y=5)printf(”%d”,x);18.已知:int a[]={1,2,3,4,5,6,7);char cl='b' ,c2='2';则结果不为2的C 语言表达式是( ) A .a[1] B .'d'-cl C .a[ '3'-c2] D .c2-019.下列程序的运行结果是( )A .16B .21C .数组元素x[3]的地址D .数组元素x[4]的地址 20.C 语言中,正确的字符串赋值语句是( )21.C 语言中,一维数组正确的定义形式是 ( )A .类型说明符数组名[常量表达式]B .类型说明符 数组名[整型表达式] c .类型说明符数组名[算术表达式] D .类型说明符数组名[整型常量表达式] 22.下列程序的运行结果是( )A .0 8.3 C .4 D .523.关于C 语言函数的调用,正确的叙述是 ( )A .C 语言源程序中至少要包含一个函数。
自学考试面向对象程序设计试题以及答案

一、选择题1、程序设计中,首先在问题域中识别出若干个()A.函数B.类C.文件D.过程2、定义类模板用关键字()A.constB.newC.deleteD.template3、运算结果类型相同的()A. 9.0/2.0 9.0/2B. 9/2.0 9/2C. 9.0/2 9/2D. 9/2 9.0/2.04、已知f1 f2同一类两个成员函数,但f1不能调用f2,说明()a.f1 f2都是静态函数b.f1是静态,f2不是c.f1不是,f2是静态d.f1 f2都不是静态函数5、调用一成员函数时,使用动态联编的情况是()A.通过对象调用一虚函数B.通过指针或引用调用一虚函数C.通过对象调用静态函数D.通过指针或引用调用一静态函数6、假定一个类构造函数为:“A(int aa=1,int bb=0){a=aa;b=bb;}则执行"A x(4)"后,x.a和x.b值分别是:()A.1,0B.1,4C.4,0D.4,17、在派生类中能直接访问基类的()A.公有成员,私有成员B.保护成员,私有成员C.不可访问成员,私有成员D.公有成员,保护成员8、不具访问权限属性的是:( )A.非类成员B.类成员C.数据成员D.函数成员9、类定义中private,protected,public 出现次数为()A.任意多次B.至多一次C.public 至少一次D.至少一次10、C++鼓励程序员将()A.数据操作分别封装B.不同类型数据封装C.数据操作封装在一起D.不同作用操作封装在一起二、填空1、C++中,最好用()代替malloc2、函数模板中template之后尖括号的类型参数冠以保留字()3、在IOS类中定义的用于格式控制的枚举变量中十、八、十六进制是dec,oct,( )4、如果重载了运算符+,则相应运算函数名是()5、由static修饰的数据成员为该类的所有对象()6、为了实现多态性,派生类需要重新定义基类中的()7、编译时多态性通过()函数实现。
2006-1 文档

全国2006年1月高等教育自学考试管理系统中计算机应用试题来源:考试大 2006/2/7 【考试大:中国教育考试第一门户】模拟考场视频课程字号:T T全国2006年1月高等教育自学考试管理系统中计算机应用试题课程代码:00051一、单项选择题(本大题共40小题,每小题1分,共40分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.以下不属于管理信息的特点的是( )A.原始数据来源的分散性B.信息处理的多样性C.信息量大D.信息资源的消耗性2.ERP较MRPⅡ更适应信息时代的要求,是因为ERP( )A.实现面向供应链的信息集成、应用范围不限于制造业、采用信息技术的最新成果B.实现面向供应链的信息集成、实现面向电子商务的应用、采用信息技术的最新成果C.实现面向供应链的信息集成、结合企业的业务流程重组、采用信息技术的最新成果D.实现面向电子商务的应用、应用范围不限于制造业、采用信息技术的最新成果3.在如下企业的决策活动中,主要依靠外部信息的是( )A.管理规划B.战术规划C.战略规划D.日常业务管理4.COPICS系统的组织结构是( )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.ATMB.ADSLC.DDND.帧中继10.计算机网络按传输技术可以分为( )A.点对点式网络和广播式网络B.点对点式网络和多点对多点网络C.点对点式网络和组播式网络D.多点对多点网络和广播式网络来源:考试大-自考站11.决定计算机运算精度的性能指标是( )A.运算速度B.字长C.主频D.内存容量12.用人的观念来模拟现实世界的模型叫( )A.逻辑模型B.物理模型C.数据模型D.概念模型13.系统开发的任务是为企业建立计算机化的信息系统,其主要的根据是企业管理的内容、规模、性质和( )A.复杂度B.效率C.目标D.产品14.要进行小型、灵活性高的系统或局部系统的设计和实施,常采用的开发方法是( )A.结构化生命周期法B.原型法C.面向对象方法D.DFD方法15.为实现“系统开发生命周期内各阶段工作自动化”而采用的技术方法是( )A.战略集合转移方法B.CASE方法C.关键成功要素方法D.企业系统规划方法16.对本企业开发能力要求最高的系统开发方式为( )A.自行开发B.合作开发C.委托开发D.购买应用软件产品17.系统规划方案的可行性分析包括:技术可行性、系统运行可行性和( )A.软件配置可行性B.管理思想可行性C.经济可行性D.硬件配置可行性18.诺兰模型中“切实从管理实际出发进行信息系统建设与改造”的阶段是( )A.普及阶段B.控制阶段C.集成阶段D.数据管理阶段19.当开发的系统是财务管理系统时,其中的“工资汇总文件”在数据流程图中应视为( )A.数据处理B.外部实体C.数据存储D.数据流20.顶层数据流程图一般包括数据来源、信息去向、系统的共享数据存储和( )A.业务及联系B.系统处理功能C.系统处理内部数据流D.数据存储载体来21.系统分析报告的主要内容包括:原系统状况和问题、新系统目标、有关新系统方案的比较和( ) A.新系统的逻辑设计B.新系统的物理设计C.原系统的工作流程D.新系统的数据库结构22.在系统开发过程中,了解原系统“数据的采集方式、信息输入输出形式和时间要求”的阶段属于( ) A.业务流程调查阶段B.系统设计阶段C.组织结构调查阶段D.数据流程分析阶段23.在整理后的U/C矩阵中,将U和C密集的部分用粗线框起来后形成的多个框具有的特点是( ) A.框与框之间没有数据联系B.框内的功能之间数据联系较多C.框内的功能之间数据联系较少D.框内的功能与其他框的数据联系较多24.应用软件系统维护分为完善性维护、适应性维护、预防性维护和( )A.比较性维护B.纠错性维护C.重构性维护D.功能增强性维护25.在数据库运行一段时间后,为了提高数据库存储空间利用率和数据存取效率而进行的重新安排记录存储位置的操作属于( )A.重设计B.重构造C.重组织D.重分析26.系统转换投入运行后,对运行结果是否达到预期目标,应如何进行维护和改进等问题进行全面分析属于( )A.系统切换B.系统评价C.系统测试D.系统规划27.为了保证系统正常可靠的运行,随着环境的变化不断改善和提高系统功能和性能的工作属于( ) A.系统分析B.系统切换D.系统维护28.在Visual FoxPro中,创建职工工资的数据表时,“奖金”字段应满足如下要求:单位是元,小于1 0000元,精确到分。
全国2006年1月高等教育自学考试高级语言程序设计(一)试题

全国2006年1月高等教育自学考试高级语言程序设计(一)试题课程代码:00342一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.可以用作C程序标识符的一组是()A.printB.i\amoodb one-halfaBc 3paiC.PxqD.Cppline# powHis.age while2.以下叙述正确的是()A.宏名必须用大写的英文字母表示B.宏定义不仅是符号替换,也可以赋值C.宏替换是在程序编译时完成的,不占用程序运行时间D.引用带参数的宏时,实际参数与宏定义中的形式参数类型应一致3.设char a='\70';则变量a中()A.包含1个字符B.包含2个字符C.包含3个字符D.是非法表示4.设long i=65539;,执行语句printf("%d",i);后的输出结果是()A.-3B.3C.65539D.数据不确定5(F-32)能正确表示成C语言赋值表达式的是5.设float c,f;,将数学表达式C=9()A.c=5*(f-32)/9B.c=5/9(f-32)C.c=5/9*(f-32)D.c=5/(9*(f-32))6.设int i=10;,表达式30-i<=i<=9的值是()A.0B.1C.9D.207.以下不能..看作一条C语句的是()A.{;}B.a=5,b=5,c=5;C.if(x>=0&&y=0);D.if(x= =0)a=5;b=10;8.在函数调用时,以下说法正确的是()A.函数调用后必须带回返回值B.实际参数和形式参数可以同名C.函数间的数据传递不可以使用全局变量D.主调函数和被调函数总是在同一个文件里9.设int x=7;,执行语句x=x <<2;后,变量x的值是()A.1B.3C.14D.2810.执行语句printf("|%9.4f|\n",12345.67);后的输出结果是()A.|2345.6700|B.|12345.6700|C.|12345.670|D.|12345.67|11.以下说法中正确的是()A.字符型变量可以存放字符串B.递归调用是指函数调用自己C.所有的外部函数只能在本文件中被调用D.在循环体中break语句和continue语句的作用都是结束循环12.设char s[6],*ps=s;,则正确的赋值语句是()A.s="12345";B.*s="12345";C.ps="12345";D.*ps="12345";13.设int a[ ]={1,2,3,4,5},*p=a;则数组元素的正确表示是()A.a[2]B.&(a+1)C.a[5]D.&p14.对二维数组的正确定义是()A.int a[ ] [ ]={1,2,3,4,5,6};B.int a[2] [ ]={1,2,3,4,5,6};C.int a[ ] [3]={1,2,3,4,5,6};D.int a[2,3]={1,2,3,4,5,6};15.字符数组s不能..作为字符串使用的是()A.char s[ ]="happy";B.char s[ ]={"happy"};C.char s[6]={'h','a','p','p','y'};D.char s[4]={'h','a','p','p','y'};16.若定义函数:fun(int a,float b){return a+b;}则该函数的数据类型是()A.intB.voidC.floatD.不确定17.设struct st{ int a;float b;}s, *p=&s;则正确的引用是()A.(*).s.aB.(*p).aC.p->s.a18.设enum color {red,yellow=2,blue,white,black}r=white;,执行printf("%d",r);后的输出结果是()A.0B.1C.3D.419.以下说法中错误..的是()A.共用型数据中所有成员的首地址都是同一个B.可以用已定义的共用型来定义数组或指针变量的类型C.共用型数据中的成员可以是结构型,但不可以是共用型D.用typedef定义新类型取代原有类型后,原类型仍可有效使用20.设#define L(x) 2*3.14*x则L(x)是()A.函数名B.函数调用C.无参的宏名D.带参的宏名二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
历年考试题-2006级C++面向对象程序设计试题A-计算机学院2007年冬天定稿

2007-2008学年第1学期2006级《C++面向对象程序设计》期末考试试题(A卷)考试时间:2008年1月15日班级学号姓名✧本试卷满分100分;✧请将答案写在答题纸上,写明题号,不必抄题,字迹工整、清晰;✧请在答题纸和试题纸上都写上你的班级,学号和姓名,交卷时请将试题纸、答题纸和草纸一并交上来。
一、单选题(共20分,每题2分)1.已知函数int f( );是类A的公有静态成员,a是用const A a; 的形式创建的一个对象,那么下列语句错误的是:(A)int num=A::f( );(B)int num=a.f( );(C) int num= a.f( ) const;(D)const int num= a.f( );2.在实现函数const A & f(A & obj)时,下面的哪一个表达式不能作为函数的返回值?(A) 全局静态变量(B) 局部静态变量(C) 函数参数obj对象(D) 局部自动变量(auto变量)3.下面关于new 和delete操作符的说法,哪个是不正确的:(A) 使用new操作符,可以动态分配全局堆中的内存资源。
(B) 用new[]申请的数组,应该用delete[] 释放。
(C) 执行语句A * p = new A成功后,调用了delete p;,则p的值为0。
(D) 执行语句A * p = new A[10];时,会调用10次构造函数。
4.下列哪种成员函数可以由const修饰?(A)无参构造函数(B) 拷贝构造函数(C) 自定义的转换函数(D) 虚的析构函数5.类D以public方式继承了类B,如下的哪个声明不能作为类D的成员?(A) B* pB; (B) B aB; (C) D aD; (D) D* pD;6.若类C的定义为class C:pubic A,private B{ public: int one,two; };则说法正确的是:(A) one和two的空间分配及初始化的顺序,要根据类C的构造函数的初始化列表。
2006年1月全国自考数据结构试题及答案

n,此时最少。 有序表 B 中的第 i 个元素不小于有序表 A 中的第 i 个元素,但不大于有序表 A 中的 第 i+1 个元素。此时归并时就要按次序轮流取其元素合并,因此比较次数达到 2n-1, 此时最多。 29.对下列关键字序列(33,25,48,59,36,72,46,07,65,20)构造表长为 19 的散 列 表 。 假 设 散 列 函 数 为 h(key)=key%13, 用 开 放 地 址 法 解 决 冲 突 , 探 查 序 列 为 d=h(key),d+12,d-12,d+2 2,d-2 2,d+32,d-32,…,等等。 (1)画出该散列表; (2)计算该散列表的装填因子α; (3)求出等概率情况下查找成功的平均查找长度 ASL。
答:由有向图 G 的 DFS 生成森林和 BFS 生成森林得图 G
a
e
b
g
c
f
d
其深度优先遍历为 acfbdge,其广度优先遍历为 begdfac。 28.当将两个长度均为 n 的有序表 A=(a1,a2,…,an)与 B=(b1,b2,…,bn)(ai≠bj, 1≤i,j≤n)归并为一个有序表 C=(c1, c2,…,c2n)时,所需进行的元素比较次数最少可达 n, 最多可达 2n-1。 (1)假设有序表 C=(2,4,5,6,7,9),试举出两组 A 与 B 的例子,使它们在归并过程 中进行的元素比较次数分别达到最少和最多; (2)写出一般情况下,使归并所需进行的元素比较次数分别达到最少和最多时,A 与 B 中 的元素应满足的条件。 答:(1)比较次数达到最少时的情况:A=(2,4,5),B=(6,7,9);
面向对象程序设计考前复习题及答案

简答题1、传统的结构化程序设计的优点和缺点是什么?优点:(1)这种程序设计方法力求算法描述准确。
(2)对每一子过程模块容易进行程序正确性证明。
缺点:(1)这种程序设计方法本质上是面向“过程”的,而“过程”和“操作”又是不稳定和多变的,因此不能直接反映人类求解问题的思路。
(2)程序代码可重用性差。
程序中除少数标准库函数外,每设计一个程序时,程序员几乎从零做起。
即使重用代码,通常也是通过拷贝或编辑重新生成一份。
(3)维护程序的一致性困难。
该种方法将数据与对数据进行处理的程序代码分离。
2、什么是对象?每个对象都具有属性(Attribute)和方法(Method)这两方面的特征。
对象的属性描述了对象的状态和特征,对象的方法说明了对象的行为和功能,并且对象的属性值只应由这个对象的方法来读取和修改,两者结合在一起就构成了对象的完整描述。
3、什么是消息?在面向对象的程序设计中,由于对象描述了客观实体,它们之间的联系通过对象间的联系来反映。
当一个对象需要另外一个对象提供服务时,它向对方发出一个服务请求,而收到请求的对象会响应这个请求并完成指定的服务。
这种向对象发出的服务请求就称为消息。
4、什么是多态性? 所谓多态性是指当程序中的其他部分发出同样的消息时,按照接收消息对象的不同能够自动执行类中相应的方法。
其好处是,用户不必知道某个对象所属的类就可以执行多态行为,从而为程序设计带来更大方便。
5、什么是面向对象的程序设计方法?这种方法将设计目标从模拟现实世界的行为转向了模拟现实世界中存在的对象及其各自的行为。
在OOP中,将“对象”作为系统中最基本的运行实体,整个程序即由各种不同类型的对象组成,各对象既是一个独立的实体,又可通过消息相互作用,对象中的方法决定要向哪个对象发消息、发什么消息以及收到消息时如何进行处理等。
6、面向对象方法的特点是什么?(1)OOP以“对象”或“数据”为中心。
由于对象自然地反映了应用领域的模块性,因此具有相对稳定性,可以被用作一个组件去构成更复杂的应用,又由于对象一般封装的是某一实际需求的各种成分,因此,某一对象的改变对整个系统几乎没有影响。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
全国2006年1月高等教育自学考试面向对象程序设计试题课程代码:02328一、单项选择题(本大题共10小题,每小题2分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.面向对象程序设计中的数据隐藏指的是()A.输入数据必须输入保密口令B.数据经过加密处理C.对象内部数据和代码合并在一起D.对象内部数据结构的不可访问性2.在C++中,编写一个内联函数Fun,使用int类型的参数,求其平方并返回,返回值也为int类型,下列定义正确的是()A.int Fun(int x){return x*x;}B.inline int Fun(int x){return x*x;}C.int inline Fun(int x){return x*x;}D.int Fun(int x){inline return x*x;}3.下面关于重载函数的叙述中正确的是()A.重载函数必须具有不同的返回值类型B.重载函数的形参个数必须不同C.重载函数必须有不同的形参列表D.重载函数的函数名可以不同4.若有定义“int x=17;”,则语句“cout<<oct<<x;”的输出结果是()A.11B.0x11C.21D.0215.下列关于析构函数的描述中正确的是()A.析构函数可以重载B.析构函数可以是虚函数C.析构函数名与类名相同D.析构函数的返回类型为void6.下列关于纯虚函数的描述中,正确的是()A.纯虚函数是一种特殊的虚函数,它是个空函数B.具有纯虚函数的类称为虚基类C.一个基类中说明有纯虚函数,其派生类一定要实现该纯虚函数D.具有纯虚函数的类不能创建类对象7.下列关于运算符重载的描述中,正确的是()A.可以改变运算符的目数B.可以改变运算符的优先级C.可以改变运算符的结合性D.可以改变运算符的功能8.要将类A说明是类B的虚基类,正确的描述是()A.class virtual B:public AB.class B:virtual public AC.virtual class B:public AD.class B:public A virtual9.下面关于静态成员的描述中,正确的是()A.静态数据成员是类的所有对象共享的数据B.类的每个对象都有自己的静态数据成员C.类的不同对象有不同的静态数据成员值D.静态数据成员不能通过类的对象访问10.假设Sample是个类,则语句“Sample a[2],*p[3];”调用构造函数的次数为()A.0 B.2C.3D.5二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
错填、不填均无分。
11.在面向对象的程序设计中,将一组对象的共同特性抽象出来形成________________。
12.在C++中要创建一个文件输入流对象fin,同时该对象打开文件“Test.txt”用于输入,则正确的声明语句是________________。
13.如果要把类B的成员函数void fun( )说明为类A的友元函数,则应在类A中加入语句________________。
14.A是一个类,已有语句“A* p;p=new A[10];”。
要释放由p指向的动态空间,正确的语句应该是________________。
15.如果一个引用不是用作函数参数或返回值,则在说明该引用时必须对它进行________________。
16.如果要把PI声明为值为 3.14159类型为双精度实数的符号常量,该声明语句是________________。
17.在C++中函数原型不但要标识一个函数的返回类型,同时还要标识该函数的________________。
18.类A的后置自增运算符++以成员函数的形式进行重载,其在类内的函数声明是________________。
19.动态联编是通过基类类型的指针或引用调用________________函数来完成。
20.基类的保护成员通过私有派生其在派生类中的访问权限是________________。
三、改错题(本大题共5小题,每小题2分,共10分)21.下面的类定义中有一处错误,请用下横线标出错误所在行并给出修改意见。
class Sample{private:int data;Sample( ){data=10;}public:Sample(int d){data=d;}int operator int( ){return data;}};22.下面的类定义中有一处错误,请用下横线标出错误所在行并给出修改意见。
#include<iostream.h>class Point{int X,Y;public:Point( ){X=0;Y=0;}Point(int x=0,int y=0){X=x;Y=y;}void display( ){cout<<X<<","<<Y<<endl;}};23.下面的程序有一处错误,请用下横线标出错误所在行并说明错误原因。
#include<iostream.h>template<class T>void Swap(T& a,T& b){T t;t=a,a=b,b=t;}void main( ){int a=3,b=4;char str1[5]=”abcd”,str2[5]=”hijk”;Swap(a,b);Swap(str1,str2);cout<<”a=”<<a<<”,b=”<<b<<endl;cout<<”str1=”<<str1<<”,str2=”<<str2<<endl;}24.下面的程序有一处错误,请用下横线标出错误所在行并说明错误原因。
#include<iostream.h>class Base{public:virtual void fun( ){cout<<"Base function"<<endl;}};class Derived:public Base{public:void fun( ){cout<<"Derived function"<<endl;}};void main( ){Base b;Derived* p=&b;b.fun( );p->fun( );}25.下面的程序有一处错误,请用下横线标出错误所在行并说明错误原因。
#include<iostream.h>class A{int x;protected:int y;public:A(int xx,int yy){x=xx; y=yy;}};class B:public A{public:B(int a,int b):A(a,b){}void display( ){cout<<x<<′,′<<y<<endl;}};void main( ){B b(5,10);b.display( );}四、完成程序题(本大题共5小题,每小题4分,共20分)根据题目要求,完成程序填空。
26.请在下面程序的横线处填上适当内容,以使程序完整,并使程序的输出为: 2,14,3#include<iostream.h>class A{int a;public:A(int i=0){a=i;}int Geta( ){return a;}};class B{A a;int b;public:B(int i=0,int j=0): ①{}void display( ){cout<<a.Geta()<<′,′<<b<<endl;}};void main( ){B b[2]={B(1,2),B(3,4)};for(int i=0;i<2;i++)②;}27.下面程序中A是抽象类。
请在下面程序的横线处填上适当内容,以使程序完整,并使程序的输出为:B1 calledB2 called#include<iostream.h>class A{public:①;};class B1:public A{public:void display( ){cout<<”B1 called”<<endl;}};class B2:public A{public:void display( ){cout<<”B2 called”<<endl;}};void show(②){p->display( );}void main( ){B1 b1;B2 b2;A* p[2]={&b1,&b2};for(int i=0;i<2;i++)show(p[i]);}28.请在下面程序的横线处填上适当内容,以使程序完整,并使程序的输出为:Name:王小明Grade:90#include<iostream.h>#include<string.h>class Person{char name[20];public:Person(char* s){strcpy(name,s);}void display( ){cout<<”Name:”<<name<<endl;}};class Student:public Person{int grade;public:Student(char* s, int g): ①{grade=g;}void display( ){②;cout<<”Grade:”<<grade<<endl;}};void main( ){Student s(“王小明”,90);s.display( );}29.请在下面程序的横线处填上适当内容,以使程序完整,并使程序的输出为5。
#include<iostream.h>class Integer{int x;public:Integer(int a=0){x=a;}void display( ){cout<<x<<endl;}①;};Integer Max(Integer a,Integer b){if(②)return a;return b;}void main( ){Integer a(3),b(5),c;c=Max(a,b);c.display( );}30.请在下面的横线处填上适当内容,以使类的定义完整。