实验3 继承和派生类的应用
派生类与继承应用举例

#include <iostream.h>
#include <math.h>
const double PI=3.1415926;
class Circle //圆类
{ protected:
double r; //半径
public:
Circle(double radius=0): r(radius) { }
public:
Cylinder(double radius=0,double height=0):Circle(radius)
{ h=height; }
double Area( ) //计算圆柱体的表面积
{ return 2*PI*r*(r+h); }
double Volume( ) //计算圆柱体的体积
}
long get_capacity(void) { return capacity; }
void display_disk(void)
{ cout<<side<<" "<<track<<" "<<sector<<" "; }
};
class hard_disk:public disk
{ private:
{ return PI*r*r*h; }
};
class Cone: public Circle //圆锥体类
{ double h; //高度
public:
Cone(double radius=0,double height=0):Circle(radius)
{ h=height; }
《程序设计基础(C )》实验教程--3

图0-2创建控制台工程
屏幕上出现如图0-3所示的Win32 Console Application—Step 1 of 1对话框后,选择“An empty project”项,然后按Finish按钮继续,
图0-3 Win32 Console Application—Step 1 of 1对话框
本课程上机实验的目的是使学生熟悉用高级语言解决实际问题的全过程,加深对语言的理解,得到程序设计基本方法和能力的训练。在独立编写程序、独立上机调试程序的同时,真正能用高级语言这个工具去解决实际问题,对计算机学科的相关知识有所了解,从而为后续课程的学习奠定良好的基础。
本实验指导所用环境是Visual C++ 6.0及以上版本。考虑到本课程的内容和特点,设置了十三个实验,每次实验需要两至三小时,分别侧重于教材中的一个方面,其中标有“*”号的习题的综合性较强,可供学有余力的学生选择。实验时也可根据具体情况做适当调整。虽然可能由于课时和机时限制等原因而不能在实验课时内全部得到安排,但还是建议学生能将其中的每个实验都能认真做一遍,因为这些实验都是学习本课程所必需的。
在文件编辑区输入源程序,存盘,如图0-7所示。
图0-7编辑MyFirst.cpp源程序
编译源程序:
选择Build | Build菜单(F7为快捷键),系统将会在Output窗口给出所有的错误信息和警告信息。当所有错误修正之后,系统将会生成扩展名为.exe的可执行文件。对于Output窗口给出的错误信息,双击可以使输入焦点跳转到引起错误的源代码处以进行修改。
出现如图0-4所示的New Project Information对话框后,按OK按钮完成工程创建。
大学C 上机实验题目(版)

20XX年复习资料大学复习资料专业:班级:科目老师:日期:实验前言(建议认真阅读)一、上机实验的目的上机实验的目的是提高学生的分析问题、解决问题的能力和动手能力,通过实践环节理解C++语言的基本结构和程序设计方法。
通过亲手编程掌握C++语言编程的方法。
二、实验基本内容为了使学生在上机实验时目标明确,本实验指导书针对课程内容编写了五个实验。
学生在课内机时先完成指导书中标有“*”号的程序,理解所学的知识,在此基础上再编写其他应用程序。
指导书中的五个个实验如下:1. 函数与编译处理2. 指针与引用3. 类和对象4. 继承和派生类5. 多态性三、实验提交(特别提醒)1. 实验题目以附件形式提交,每个附件限一个源程序,附件以实验编号-题号-自己学号.cpp命名;如学号为20XXXX20XXXX20XXXX34的同学提交实验1的第5题,则附件命名方式为:1-5-20XXXX20XXXX20XXXX34.cpp,错误提交的将视为未提交。
2. 提交时间定为该次实验课的一周内,过期不再接收。
四、评分和作弊处理1. 要求提交实验题总数为6题(带“*”号),占期末总评成绩的20XX%;2. 存在抄袭和被抄袭的作业,无论抄袭与被抄袭者,本门课程平时成绩以零分记。
存在两次及两次以上抄袭和被抄袭者,本门课程以不及格记。
五、实验课要求(重点强调)1. 严禁QQ、MSN等即时软件工具聊天;2. 严紧接听手机、发送短信;3. 严紧玩游戏。
实验1 函数与编译处理一、实验目的1. 掌握函数声明、定义和使用的方法;2. 掌握形参与实参之间的对应关系;3. 掌握函数调用时,形参、实参之间的“值传递”和“引用传递”的区别;4. 掌握函数递归调用的方法;5. 掌握全局变量、局部变量、静态变量的使用方法;6. 掌握文件包含的使用方法。
二、实验内容1. 定义两个函数swap1和swap2,目的是实现两个整数的次序交换,其中swap1的参数是传递值参数,swap2的参数是引用参数,在程序中分别调用这两个函数,其输出结果如下所示:初始值:x=1,y=2调用swap1后的结果:x=1 y=2调用swap2后的结果:x=2 y=12. 编写一个函数,用来计算从键盘上输入的整数的阶乘。
实验四:派生类和继承(一)

福建农林大学实验报告实验4 派生类和继承(一)一、实验目的和要求(1)掌握派生类的声明与定义方法,进一步理解类的继承的概念,能够定义和使用类的继承关系。
(2)熟悉公有派生和私有派生的访问特性。
二、实验内容和原理1、(1)定义一个基类Animal,该类具有私有整型成员变量age,weight,构造派生类Dog公有继承Animal。
Dog类新增私有成员变量color,新增成员函数SetAge(int n)中直接给age赋值,新增成员函数SetWeight(int m)中直接给weight赋值,查看编译结果,并分析结果。
(2)将类Anima l中的age和weight为公有成员,重做第一步,并分析结果。
(3)将类Animal中的age和weight 为保护成员,重做第一步,并分析结果。
(4)将派生类Dog的继承方式改为私有继承方式和保护继承方式重做以上各小题,并分析结果。
2、程序分析题(写出程序的输出结果,并分析结果)。
三、实验环境1. 硬件:PC机;2. 软件:Windows操作系统、Visual C++ 6.0四、算法描述及实验步骤1、(1):#include <iostream.h>class animal{private:int age,weight;};class dog:public animal{private:char color[10];public:int SetAge(int n){age=n;return n;}int SetWeight (int m){weight=m;return m; }};int main(){ int x,y;dog a;cout<<"Please input dog's age :";cin>>x;cout<<endl;cout<<" Please input dog's weight:";cin>>y;cout<<endl;cout<<"The dog's age is "<<a.SetAge(x)<<endl;cout<<"The dog's age weight is"<<a.SetWeight(y)<<endl; return 0;}(2):#include <iostream.h>class animal{public:int age,weight;};class dog:public animal{private:char color[10];public:int SetAge(int n){age=n;return n;}int SetWeight (int m){weight=m;return m; }};int main(){ int x,y;dog a;cout<<" Please input dog's age :";cin>>x;cout<<endl;cout<<" Please input dog's weight:";return 0;}(3):#include <iostream.h>class animal{private:int age,weight;};class dog:public animal{private:char color[10];public:int SetAge(int n){age=n;return n;}int SetWeight (int m){weight=m;return m; }};int main(){ int x,y;dog a;cout<<" Please input dog's age :";cin>>x;cout<<endl;cout<<" Please input dog's weight:";cin>>y;cout<<endl;cout<<" The dog's age is "<<a.SetAge(x)<<endl;cout<<" The dog's age weight is "<<a.SetWeight(y)<<endl; return 0;}(4):#include <iostream.h>class animal{private:int age,weight;};class dog:public animal{private:char color[10];public:int SetAge(int n){age=n;return n;}int SetWeight (int m){weight=m;return m; }};int main(){ int x,y;dog a;cout<<" Please input dog's age :";cin>>x;cout<<endl;cout<<" Please input dog's weight:";return 0;}(5):#include <iostream.h>class animal{private:int age,weight;};class dog:public animal{private:char color[10];public:int SetAge(int n){age=n;return n;}int SetWeight (int m){weight=m;return m; }};int main(){ int x,y;dog a;cout<<" Please input dog's age :";cin>>x;cout<<endl;cout<<" Please input dog's weight:";cin>>y;cout<<endl;cout<<" T The dog's age is "<<a.SetAge(x)<<endl;cout<<" The dog's age weight is "<<a.SetWeight(y)<<endl; return 0;}(6):#include <iostream.h>class animal{private:int age,weight;};class dog:public animal{private:char color[10];public:int SetAge(int n){age=n;return n;}int SetWeight (int m){weight=m;return m; }};int main(){ int x,y;dog a;cout<<" Please input dog's age :";cin>>x;cout<<endl;cout<<" Please input dog's weight:";return 0;}(7):#include <iostream.h>class animal{private:int age,weight;};class dog:public animal{private:char color[10];public:int SetAge(int n){age=n;return n;}int SetWeight (int m){weight=m;return m; }};int main(){ int x,y;dog a;cout<<" Please input dog's age :";cin>>x;cout<<endl;cout<<" Please input dog's weight:";cin>>y;cout<<endl;cout<<" The dog's age is "<<a.SetAge(x)<<endl;cout<<" The dog's age weight is "<<a.SetWeight(y)<<endl; return 0;}(8):#include <iostream.h>class animal{private:int age,weight;};class dog:public animal{private:char color[10];public:int SetAge(int n){age=n;return n;}int SetWeight (int m){weight=m;return m; }};int main(){ int x,y;dog a;cout<<" Please input dog's age :";cin>>x;cout<<endl;cout<<" Please input dog's weight:";return 0;}(9):#include <iostream.h>class animal{private:int age,weight;};class dog:public animal{private:char color[10];public:int SetAge(int n){age=n;return n;}int SetWeight (int m){weight=m;return m; }};int main(){ int x,y;dog a;cout<<" Please input dog's age :";cin>>x;cout<<endl;cout<<" Please input dog's weight:";cin>>y;cout<<endl;cout<<" The dog's age is "<<a.SetAge(x)<<endl;cout<<" The dog's age weight is "<<a.SetWeight(y)<<endl; return 0;}2#include<iostream.h>class A{public: A(int i,int j){a=i;b=j;}void move(int x,int y){a+=x;b+=y;}void display(){cout<<"("<<a<<","<<b<<")"<<endl;} private:int a,b;};class B:public A{public: B(int i,int j,int k,int l):A(i,j),x(k),y(l){}void display(){cout<<x<<","<<y<<endl;}void fun1(){move(13,15);}void fun2(){A::display();}void fun3(){display();}private:int x,y;int main(){A aa(2,4);aa.display();B bb(5,6,7,8);bb.fun1();bb.fun2();bb.fun3();bb.A::display();bb.B::display();return 0;}五、调试过程1、调试程序,截图如下:原因分析:在public继承中void display 中的display打错成diaplay。
继承的原理和应用

继承的原理和应用1. 什么是继承?在面向对象编程中,继承是一种能够让一个类从另一个类中继承属性和方法的机制。
通过继承,子类可以直接使用父类的属性和方法,同时还能根据需要进行扩展或修改。
2. 继承的原理继承的原理主要涉及两个概念:父类和子类。
父类是已经存在的一个类,子类是由父类派生出来的一个新类。
子类继承了父类的属性和方法,并且可以在此基础上进行扩展。
在继承关系中,子类可以称为派生类,父类可以称为基类或超类。
子类通过使用关键字extends来继承父类,继承关系是一种is-a关系,即子类是父类的一种扩展。
继承的原理在底层实现中主要依赖于类的继承机制和虚函数表。
当一个类继承自另一个类时,编译器会将父类的成员变量和成员函数复制到子类中,子类可以直接访问这些成员。
同时,编译器还会根据派生类对继承成员的访问权限进行调整。
3. 继承的应用继承作为面向对象编程的基本概念之一,广泛应用于软件开发中的各个领域。
下面列举了一些继承的应用场景:• 3.1 代码复用继承可以实现代码的复用,在父类中定义通用的属性和方法,子类可以继承这些属性和方法,并且不需要重新编写相同的代码。
这大大提高了代码的复用性,减少了代码的冗余。
• 3.2 扩展功能子类可以对父类的功能进行扩展。
子类可以新增属性和方法,或者重写父类的方法以实现自己的逻辑。
这种扩展使得代码更加灵活,方便在不改动原有代码的情况下实现新的功能。
• 3.3 多态性继承是多态性实现的基础。
多态性是指一个类型的实例可以在不同的情况下表现出不同的行为。
通过继承,子类可以根据自己的需要重写父类的方法,实现不同的行为。
这种多态性提供了更高层次的抽象和封装,使得代码更加灵活和可扩展。
• 3.4 组合继承可以与其他面向对象的概念一起使用,如组合和接口。
组合是指一个类包含另一个类的对象作为其成员变量,通过继承,可以将其他类的功能组合到一个新的类中,实现更加复杂的功能。
• 3.5 类层次结构继承可以建立类的层次结构,使得类与类之间形成父子关系。
java类的继承实验报告

java类的继承实验报告Java类的继承实验报告引言:在面向对象的编程语言中,继承是一种重要的概念。
Java作为一种面向对象的编程语言,也提供了类的继承机制。
本实验旨在通过编写Java程序,深入理解和掌握Java类的继承。
实验目的:1. 理解继承的概念和原理;2. 掌握Java中类的继承的语法和用法;3. 实践继承的实际应用。
实验过程:1. 创建父类和子类在实验中,我们首先创建一个父类和一个子类。
父类可以是一个基本的类,子类则继承了父类的属性和方法。
这样,子类就可以在不改变父类的基础上,扩展自己的功能。
2. 继承的语法和用法Java中,使用关键字"extends"来实现类的继承。
子类通过继承父类,可以获得父类的属性和方法,并且可以在子类中添加新的属性和方法。
在实验中,我们可以通过创建子类对象,并调用继承自父类的方法来验证继承的正确性。
3. 方法的重写在继承中,子类可以重写父类的方法。
这样,当子类调用该方法时,实际上执行的是子类重写后的方法。
通过方法的重写,我们可以实现多态性的效果。
4. 实际应用在实验中,我们可以选择一个具体的应用场景,例如动物类的继承。
我们可以创建一个父类Animal,包含基本的属性和方法,然后创建子类Dog和Cat,分别继承Animal类,并添加自己的特有属性和方法。
通过这个实例,我们可以更好地理解继承的实际应用。
实验结果:通过实验,我们成功地创建了父类和子类,并验证了继承的正确性。
我们还成功地重写了父类的方法,实现了多态性的效果。
最后,我们还通过实际应用的例子,更好地理解了继承的实际应用。
实验总结:通过本次实验,我们深入理解和掌握了Java类的继承。
继承是面向对象编程中的重要概念,通过继承,我们可以实现代码的重用和扩展。
在实际应用中,继承也可以帮助我们更好地组织代码,提高代码的可读性和可维护性。
然而,继承也有一些限制和注意事项。
首先,Java中只支持单继承,即一个子类只能继承一个父类。
《面向对象程序设计》实验指导书 (1-6个实验,含参考代码)要点

面向对象程序设计实验指导书(适用:电子信息11级)彭召意陶立新编写计算机与通信学院2014.9目录实验一 C++基础的应用 (1)实验二类和对象的应用 (3)实验三类的构造函数、析构函数的应用 (4)实验四友员和运算符重载 (5)实验五类的继承与派生 (6)实验六类的多态性与虚函数 (7)附录:各实验的程序代码 (8)实验一 C++基础的应用(实验课时:2 实验性质:设计)实验名称: C++基础的应用实验目的: (1)进一步学习VC++6.0开发环境及程序调试方法。
(2)练习C++函数的定义及使用;(3)练习C++数组的定义及使用;(4)练习C++指针的定义及使用;(5)练习C++结构体的定义及使用;(6)练习多文件的程序的编译和运行方法;实验设备:(1)硬件:个人微机(配置不低于:CPU为P4,主频1.6G,内存256MB,硬盘40GB);(2)软件:操作系统为WindowsXP(或2000、server2003等),工具软件为Visual C++6.0。
实验内容: (1)熟悉Visual C++6.0编译系统的常用功能,特别是debug调试功能;(2)编程1:编写一个程序c1.cpp,用来求2个或3个整数的最大数。
要求:用重载函数的方法来求最大数;函数原型:int max( int a, int b) 和int max( int a, int b,int c)。
(3)编程2:编写一个程序c2.cpp,求:a!+ b! + c!的值。
要求:使用递归函数。
主程序和函数分开到两个源程序文件中,分别进行编译后,再运行;(4)编程3:有一个3*4的矩阵,要求编程求出其中值最大的那个元素的值,以及其所在的行号和列号;(5)编程4:建立一个动态链表并进行输出和删除管理。
链表的每个节点为学生信息,包括:学号,姓名,性别,下一学生信息的指针。
程序的工作:(a)建立三个学生信息的节点,然后顺序输出该三个学生信息;(b)删除中间的节点,再顺序输出学生信息。
c++程序设计类和对象实验总结

一、实验目的在本次C++程序设计实验中,主要目的是通过对类和对象的学习和掌握,进一步加深对C++程序设计语言的理解和应用。
通过具体的实验操作,提高学生的编程能力和解决问题的能力,培养学生的动手能力和团队协作精神。
二、实验内容1. 掌握类的概念和基本语法,包括类的定义、成员变量、成员函数等;2. 熟悉对象的概念和使用方法,了解对象的初始化和销毁;3. 学习类的继承和派生的知识,掌握继承与派生的语法和使用;4. 能够独立编写包含类和对象的程序,实现各种功能;5. 通过实践项目,提高自己的编程水平,锻炼解决问题的能力。
三、实验过程在实验过程中,首先我们需要了解类和对象的概念,理解类的定义和对象的创建方法。
编写简单的程序进行练习,例如创建一个包含学生信息的类,并实例化对象,调用成员函数来输出学生信息。
也需要深入学习类的继承和派生的知识,理解基类和派生类的关系,掌握虚函数的概念和使用方法。
在实验中,我们编写了多个实例程序来练习类的继承和派生,加深了对这一知识点的理解。
在实验过程中,我们还遇到了一些问题,例如在使用多重继承时需要特别注意类的构造和析构顺序,以及在使用虚函数时需要注意动态绑定的原理等。
通过解决这些问题,我们不断提高了自己的编程水平,加深了对C++语言的理解。
四、实验总结通过本次实验,我们深刻理解了类和对象的概念,掌握了类的定义和对象的创建方法。
在实验中,我们编写了多个功能丰富的程序,包括学生信息管理系统、图形类的继承等。
这些程序不仅巩固了所学的知识,也让我们感受到了编程的乐趣。
通过与同学的讨论和交流,我们也学到了很多新的知识和技巧。
本次实验对我们的帮助很大,让我们更深入地理解了C++程序设计语言,提高了我们的编程水平。
希望在以后的学习和实践中,能够进一步加深对类和对象的理解,不断提高自己的编程能力。
在本次的C++程序设计实验中,我们深入学习了类和对象的概念,并通过实际的编程练习加深了对C++程序设计语言的理解和应用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.1实验目的1.掌握多重继承和派生类的方法2.掌握初始化基类成员的方法3.掌握定义虚基类的方法3.2实验内容与步骤1.上机实验题一定义一个日期(年、月、日)的类和一个时间(时、分、秒)的类,并由这两个类派生出日期和时间类。
主函数完成基类和派生类的测试工作。
⑴分析定义一个描述日期的类,构造函数完成年、月、日的初始化,包含一个重新设置日期的成员函数,一个获取日期的成员函数。
该类可定义为:class Date{int Year,Month,Day; //分别存放年、月、日public:Date(int y=0, int m=0,int d=0){Year= y; Month = m; Day = d;}void SetDate(int ,int ,int );void GetDate(char *);};函数SetDate完成数据成员的赋初值。
函数GetDate要将整数年、月、日变换成字符串后,存放到参数所指向的字符串中。
把一个整数变换成字符串可通过库函数:char * _itoa(int a , char *s, int b);来实现,参数a为要变换的整数,b为数制的基数(如10,表示将a转换为对应的十进制的字符串),转换的结果存放到s所指向的字符串中。
函数返回变换后字符串的首指针。
该成员函数可以是:void Date::GetDate(char *s){char t[20];_itoa(Year,s,10); //将年变换为字符串表示strcat(s,"/"); //年、月、日之间用“/”隔开_itoa(Month,t,10); //将月变换为字符串表示strcat(s,t); //将年、月字符串拼接strcat(s,"/");_itoa(Day,t,10);strcat(s,t); //将年、月、日拼接成一个字符串}定义描述时间的类与描述日期的类类同,然后用这二个类作为基类,公有派生出描述日期和时间的类。
简化的参考程序如下:#include <iostream.h>#include <string.h>#include <stdlib.h>class Date{int Year,Month,Day; //分别存放年、月、日public:Date(int y=0, int m=0,int d=0){ Year= y; Month = m; Day = d; }void SetDate(int ,int ,int );void GetDate(char *);};void Date::SetDate(int y,int m,int d ){Year= y; Month = m; Day = d;}void Date::GetDate(char *s){char t[20];_itoa(Year,s,10); strcat(s,"/");_itoa(Month,t,10); strcat(s,t);strcat(s,"/");_itoa(Day,t,10); strcat(s,t);}class Time{int Hours,Minutes,Seconds; //时、分、秒public: ArrayTime(int h=0,int m=0, int s=0){ Hours = h; Minutes = m; Seconds = s; }void SetTime(int h,int m, int s){ Hours = h; Minutes = m; Seconds = s; }void GetTime(char *);};void Time::GetTime(char *s){char t[20];_itoa(Hours,s,10); strcat(s,":");_itoa(Minutes,t,10); strcat(s,t);strcat(s,":");_itoa(Seconds,t,10); strcat(s,t);}class DateTime:public Date,public Time{ //公有派生public:DateTime():Date(),Time() { }DateTime(int y,int m,int d,int h,int min,int s):Date(y,m,d),Time(h,min,s){ }void GetDateTime(char *);void SetDateTime(int y,int m,int d,int h,int min,int s);};void DateTime::GetDateTime(char *s){char s1[100],s2[100];GetDate(s1); GetTime(s2);strcpy(s,"日期和时间分别是:"); strcat(s,s1);strcat(s,"; "); strcat(s,s2);}void DateTime::SetDateTime(int y,int m,int d,int h,int min,int s) {SetDate(y,m,d); SetTime(h,min,s);}void main(void ){Date d1(2003,1,30);char s[200];d1.GetDate(s);cout<<"日期是:"<<s<<'\n';Time t1(12,25,50);t1.GetTime(s);cout<<"时间是:"<<s<<'\n';DateTime dt1(2003,2,4, 8,20,15);dt1.GetDateTime(s);cout<<s<<'\n';dt1.SetDateTime(2003,12,30,23,50,20);dt1.GetDateTime(s);cout<<s<<'\n';}⑵上机要求将类DateTime改为由基类Date和Time私有派生,程序能否正确编译和执行,为什么?⑶写出实验报告。
2.上机实验题二设计一个描述儿童、成人和老人的类,儿童分为学龄前和学龄期儿童,成人有工作,老人已退休。
提取共性作为基类,并派生出满足要求的各个类及每一个类上的操作。
设计一个完整的程序,并完成测试程序的正确性。
⑴分析描述一个人的基本特性包括:姓名,出生日期,出生地。
把这些基本特性定义为一个基类Base。
不论学龄前还是学龄期儿童都要有监护人。
为此在类Base的基础上派生出类AllChil,再把类AllChil作为基类派出学龄前和学龄期儿童的类。
把类Base作为基类,分别派生出成人类和老人类。
一个供参考的部分程序为:#include <iostream.h>#include <string.h>class Base{char Name[14]; //姓名int Year,Month,Day; //分别存放出生年、月、日char BothPlace[30]; //出生地public:Base( char *n, int y,int m,int d,char *bp) ;Base();void SetDate(int ,int ,int ); //设置出生年、月、日void SetName(char *); //设置姓名void SetBothPlace(char *); //设置出生地void GetDate(int *,int * ,int *); //获取出生年、月、日void GetName(char *); //获取姓名void GetBothPlace(char *); //获取出生地void PrintBase(); //输出有关信息};class AllChil:public Base{char ParMa[14]; //监护人public :AllChil() :Base();AllChil(char *n, int y,int m,int d,char *bp,char *pm):Base(n,y,m,d,bp);void SetParMa( char *); //设置监护人void GetParMa( char *); //获取监护人void PrintAllChil( ) ; //输出有关信息};class Men:public Base{char *unit; //单位int salary; //工资char tel[20]; //电话public:Men( ) :Base();Men(char *n, int y,int m,int d,char *bp,char *u,int s,char *te):Base(n,y,m,d,bp);void GetData(char *,int *,char *); //取单位,工资,电话void SeetData(char *,int *,char *); //设置单位,工资,电话void PrintMen(); //输出有关信息};class OldMen:public Base {int salary;char tel[20];public:......};⑵上机要求完成程序的正确性测试工作。
⑶写出实验报告。
3.3项目选做设计程序从学生类中派生出硕士研究生和博士研究生类。