prog15.cpp

来自「C++语言程序设计题典」· C++ 代码 · 共 82 行

CPP
82
字号
#include <iostream.h>
#include <string.h>
class base
{
	int no;        //编号
	char *name;    //姓名
	char *add;     //住址
public:
	base() {}
	void setno(int n) { no=n; }
	void setname(char na[])
	{
		name=new char[strlen(na)+1];
		strcpy(name,na);
	}
	void setadd(char ad[])
	{
		add=new char[strlen(ad)+1];
		strcpy(add,ad);
	}
	int getno() { return no; }
	char *getname() { return name; }
	char *getadd() { return add; }
};
class teacher:public base
{
	char *prof;    //职称
	int salary;    //工资
public:
	teacher() {}
	void setprof(char pr[])
	{
		prof=new char[strlen(pr)+1];
		strcpy(prof,pr);
	}
	void setsalary(int sal) { salary=sal; }
	char *getprof() { return prof; }
	int getsalary() { return salary; }
};
class student:public base
{
	int score;      //成绩
	char *major;    //专业
	int level;      //年级
public:
	student() {}
	void setscore(int s) { score=s; }
	void setmajor(char maj[])
	{
		major=new char[strlen(maj)+1];
		strcpy(major,maj);
	}
	void setlevel(int lev) { level=lev; }
	int getscore() { return score; }
	char *getmajor() { return major; }
	int getlevel() { return level; }
};
void main()
{
	teacher t;
	student s;
	t.setno(129543);
	t.setname("李明");
	t.setprof("副教授");
	t.setadd("12栋东1门302");
	t.setsalary(1567);
	s.setno(9910112);
	s.setname("孙华");
	s.setadd("10楼401");
	s.setscore(86);
	s.setmajor("计算机科学");
	s.setlevel(4);
	cout << "输出结果:" << endl;
    cout << "    教师:" << t.getname() << "(" << t.getno() << ")"
		<< "," << t.getprof() << ",家住" << t.getadd() 
		<< ",月工资" << t.getsalary() << "元" << endl;
    cout << "    学生:" << s.getname() << "(" << s.getno() << ")"
		<< "," << s.getlevel() << "年级,住" << s.getadd() 
		<< ",专业为" << s.getmajor() << ",成绩" << s.getscore() 
		<< "分" << endl;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?