实验5 类和对象、继承和派对

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验内容

程序ExClass: 定义一个人员类CPerson,包括数据成员:姓名、编号、性别和用于输入输出的成员函数。在此基础上派出学生类(增加成绩)和教师类CTeacher(增加教龄),并实现对学生和教师信息的输入、输出。编写一个完整的测试程序,并将EX-Class所有的类定义保存在Ex-Class.h,将类的成员函数实现代码保存在Ex-Class.cpp中

实验备和说明

{1}在学习完第2章的“继承和派对类“内容之后进行本次实验。

(2)编写本次上机所需的程序。

实验步骤

1.创建工作文件夹

打开计算机,在“D:\Visual C++程序\LiMing”文件夹中创建一个新的子文件夹“实验5”。

2.输入程序Ex-Class.h

输入程序Ex-Class.h的具体步骤如下。

(1)启动Visual C++ 6.0.

(2)单击标准工具栏上的按钮,在新打开的文档窗口中输入下列程序代码:序代码:

#include

#include

class Cperson

{

public:

Cperson()

{

strcpy(pName,??);

strcpy(pID,??);

}

Cperson(char*name,char*id,bool isman=1)

{ Input(name,id,isman);}

void Input(char*name,char*id,bool isman)

{

setName(name);

setID(id);

setSex(isman);

}

void Output()

{

cout<

cout<

char*str=bMan? ?男?:?女?;

cort<

}

public: ∥姓名属性操作

char*getName()const

{ reture (char*)pName;}

void setName(char*name)

{

int n=strlen(name);

strncpy(pName,name,n);

pName[n]= ′?0?;

}

∥编号属性操作

char*getID()const

{ reture(char*)pID; }

void setID(char*id)

int n=strlen?id?;

Strncpy?pID,id,n?;

pID[n]=′?0?;

}

∥性别属性操作

bool getSex(){ return bMan;}

void setSex(bool isman) {bMan=isman;}

private:

char pName[20];∥姓名

char pID [20];∥编号

bool bMan;∥性别:0表示女,1表示男};

class Cstudent:public Cperson

{

Public:

Cstudent(char*name,char*id,bool isman=1);

~Cstudent(){}

Void InputScore(double score1,double score 2 double score3);

Void Print();

Cperson student;

Private:

double dbScore[3];∥3门成绩

};

Class CTeacher:public Cperson

{

Public:

CTeacher(char*name,char*id,bool isman=1,int years=10);

~ CTeacher(){}

Void Print();

private:

int nTeach Years;∥教龄

}:

(3)单击标准工具栏的Save按钮,弹出“保存为”文件对话框。将文件定位到

“D:\Visual C++程序\LiMing\实验5”,文件名为Ex_Class.h。

3.输入程序Ex_Class.cpp

输入程序Ex_Class.cpp的具体步骤如下。

(1)单击标准工具栏上的“New Text File”按钮,在新打开的文档窗口中输入下列程序代码:#include

# include?Ex-Class.h?

//类Cstudent实现代码

Cstudent::Cstudent(char*name,*id,bool isman) :student(name,id,isman)

deScore〔0〕=0

dbScore〔1〕=0

deScore〔2〕=0

void Cstudent:InputScore(double scorel,double score2,double score3)

deScore〔0〕=score1

dbScore〔1〕= score2

deScore〔2〕= score3

void Cstudent::Print()

Student.Output()

for(int i=0;i<3;i++)

cout<

类Cteacher实现代码 CTeacher::Cteacher(char*name,char*id,bool isman, int years) {

nTeachYears= years;

Input(name, id, isman);

voidCTeacher::Print()

Output()

cout<

//主函数

void main()

Cstudent stu(?LiMing?,?21010211?)

cout<

cout<

stu.Print();

stu.student.setName(?LingLing?);

stu.student.setSex(0);

stu.InPuScore(80,90,85);

stu.Print()

Cteacher tea(?Ding?,?911085?);

tea.Print();

相关文档
最新文档