第一范文网 - 专业文章范例文档资料分享平台

多态性与虚函数练习

来源:用户分享 时间:2025/8/9 17:19:40 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

多态性与虚函数练习

多态性与虚函数练习

1. 设计一个评选优秀教师和学生的程序,其类结构如图1所示。当输入一系列教师或学生的记录后,将优秀学生及教师的姓名列出。

类Base void getname() void printname() 纯虚函数int ifgood()=0 string name

#include #include using namespace std; class Base { public:

void getname(){ cout<<\姓名:\ void printname()

{ cout<

类student void getnum() int num 纯虚函数ifgood实现:若考试成绩大于90分,则返回1 类teachere void getnum() int num 纯虚函数ifgood实现:若一年发表论文大于3篇,则返回1 protected: string name; };

class Student:public Base { public: void

getnum(){

cout<<

\

图1 类结构

假设运行结果如下所示:

绩:\

int isgood() { return num>90?1:0;} private: int num; };

class Teacher:public Base { public:

void getnum() { cout<< \每年发表论文数:\

int isgood(){ return num>3?1:0;}

第 1 页 共 6 页

多态性与虚函数练习

private: int num; }; int main() {

Base *p[50]; Student *pstud; Teacher *ptech; char ch; int count=0; do {

cout<<\ cin>>ch; if(ch=='s') {

pstud=new Student; pstud->getname(); pstud->getnum(); p[count++]=pstud; }

else if(ch=='t') {

ptech=new Teacher; ptech->getname(); ptech->getnum(); p[count++]=ptech; } else

cout<<\ cout<<\ cin>>ch; }while(ch=='y');

cout<<\优秀者的姓名:\ for(int i=0;iisgood()==1) p[i]->printname(); cout<

2.编写一个程序实现图书和杂志销售管理。当输入一系列图书和杂志销售记录后,将销售良好(图书每月售500本以上,杂志每月2500本以上)的图书和杂志名称显示出来。

类Base 纯虚函数void gettitle() void printtitle() 纯虚函数int ifgood()=0 string title 类Book void getsold() int numsold 纯虚函数ifgood实现:若每月图书销售量大于500,则返回1. 类Journal void getsold() int numsold 纯虚函数ifgood实现:若每月杂志销售量大于2500,则返回true

图2 类结构

第 2 页 共 6 页

多态性与虚函数练习

假设运行结果如下:

int isgood() { return numsold>500?1:0;} private: int numsold; };

class Journal:public Base { public:

void gettitle() { cout<<\杂志名:

\

void getsold() { cout<< \每月销售杂志量:\

int isgood(){ return numsold>2500?1:0;} private: int numsold; }; int main() {

Base *p[50]; Book *pbook; Journal *pjour; char ch; int count=0; do {

cout<<\ cin>>ch; if(ch=='b') {

第 3 页 共 6 页

#include #include using namespace std; class Base { public:

virtual void gettitle()=0; void printtitle()

{ cout<

class Book:public Base { public:

void gettitle() { cout<<\书名:\

void getsold(){ cout<< \每月销售书

量:\

搜索更多关于: 多态性与虚函数练习 的文档
多态性与虚函数练习.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c377d49x03p1qw0b8cvba7dd7d92whi01ao0_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top