欢迎来到天天文库
浏览记录
ID:38476543
大小:54.50 KB
页数:4页
时间:2019-06-13
《面向对象程序设计B题目》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、面向对象程序设计B题目文档(共三题,都需要完成)下面一共有三个题目,第一道题是论述题,后两道是编程题。每道题下面有实现要求,请注意看清实现要求。题目1:(30分)1、请阐述面向对象技术进行程序设计的优势2、请阐述对象的概念,对象和类的区别3、请阐述面向对象程序设计的基本特征,并详细介绍注意:上面的每一问,请各用一段文字进行说明。题目2:(35分)自己实现MyString类,类的声明如下:classMyString{public:MyString(char*str=NULL);MyString(constMyString&other);MyString&operator=
2、(constMyString&other);~MyString();MyStringoperator+(constMyString&other);booloperator!=(constMyString&other);booloperator==(constMyString&other);friendstd::ostream&operator<<(std::ostream&output,MyStringmyString);private:char*m_data;};要求:(1)上面是MyString类的声明,请编写出MyString类中各个成员函数的实现,并写出注释,解
3、释该函数实现了什么功能。(2)要求注意文件的划分,即分别用一个.cpp和一个.h文件存放类中成员函数的定义和类的声明(.cpp文件存放类中成员函数的定义,.h文件存放类的声明)(3)编写主函数(该main函数编写在main.cpp中),测试该类。题目3:(35分)设计实现校园信息管理系统,在该校园信息管理系统中同时对教师和学生的信息进行管理。要求和提示如下,请认真看完:(1)编写person类,student类,teacher类的声明和成员函数定义,注意进行文件的划分,即分别用一个.cpp和一个.h存放一个类的定义和声明各个文件名称如下:person.h,person.
4、cpp,student.h,student.cpp,teacher.h,teacher.cpp,main.cpp此处不允许将所有三个类的成员函数定义写到同一个.cpp中!!(2)在编写主函数main的.cpp文件中有如下内容(注意:该.cpp文件并不仅仅包含下面内容,缺少的部分需要自己根据需要和实际情况添加)//测试多态性voidShowAll(person*p){p->Show();}voidmain(){students;s.Read();teachert;t.Read();//下面是调用ShowAll函数显示学生信息,包括姓名性别家庭住址出生日期等ShowAll(
5、&s);//请在下面调用ShowAll函数显示教师信息,包括姓名性别家庭住址出生日期等}提示:(1)person类的声明如下(下面的声明有些问题,无法实现多态,需要自己修改好!!):classperson{public:person();voidShow(void);voidRead(void);private:charname[10];//姓名charsex[10];//性别charaddress[50];//家庭住址datebirthday;//出生日期,date为自定义结构,见下面的提示};(2)类设计如下:person类定义数据类型描述namechar数组姓名s
6、exchar数组性别addresschar数组家庭住址birthdaydate(自定义结构)出生日期Show虚成员函数输出person实例信息(提示:cout)Read虚成员函数输入person实例信息(提示:cin)下面,由person类派生出学生类student和教师类teacher。类中成员名称及其功能说明如下表:student类定义数据类型描述majorchar数组所学专业coursescourse数组(自定义结构)所学课程(假设每名学生最多学20门课程)sregisterdate(自定义结构)入学日期Show成员函数输出student实例信息(提示:cout)
7、Read成员函数输入student实例信息(提示:cin)teacher类定义数据类型描述coursescourse数组(自定义结构)所教课程(假设每名教师最多教10门课程)tregisterdate(自定义结构)到校日期Show成员函数输出teacher实例信息(提示:cout)Read成员函数输入teacher实例信息(提示:cin)(3)自定义的结构体如下://日期:用于person出生日期,学生入学日期,教师入职日期structdate{intyear;intmonth;intday;};//课程:用于教师教授课程信息,学生学习的
此文档下载收益归作者所有