C++練習:繼承與多態性

題目:設計一個程序判斷某人是否爲優秀教師或優秀學生。判斷條件是如果學生的分數大於90,則爲優秀學生;如果教師發表的論文數大於5,則爲優秀教師。

具體要求如下:
在這裏插入圖片描述

#include<iostream>
using namespace std;
class people
{
protected:
	char category[20];
	char name[10];
	int num;
	int result;
public:
	people()
	{
		cout<<"請輸入人員類別:"; cin>>category;
		cout<<"請輸入姓名:"; cin>>name;
	}
	void show()
	{
		if(result)	cout<<name<<"是優秀"<< category<<endl;
		else cout<<name<<"不是優秀"<<category<<endl;
	}
	virtual void inputnum()=0;
	virtual void isgood()=0; 
}; 
class student:public people
{
	void inputnum()
	{
		cout<<"請輸入分數" ;
		cin>>num;
	}
	void isgood()	
	{
		result=(num>90)?1:0;
	}
};
class teacher :public people
{
	void inputnum()
	{
		cout<<"請輸入論文數" ;
		cin>>num; 
	}
	void isgood()
	{
		result=(num>5)?1:0;
	}
};
int main()
{
	people *p;
	student a;
	p=&a;
	p->inputnum();p->isgood();p->show();
	teacher t;
	p=&t;
	p->inputnum();p->isgood();p->show();
	return 0;
 } 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章