永发信息网

用类编写任意程序

答案:1  悬赏:60  手机版
解决时间 2021-05-05 02:50

1.问题内容描述清晰。
2.在解决问题的过程中,必须使用类的方法解决问题。
3.如果使用多个类实现,要画出类结构关系图。
4.关键变量需要注释,重要函数需要画出流程图。

所有文档使用Word撰写,关系图,流程图使用Word中的绘图工具或Visio绘制,最终数据需要包含整个工程,必须包括编译后的可执行文件。
(不要网上能搜到的,这是选修考试大作业,我的qq625505882)
最佳答案

#include<iostream.h>
#include<string.h>
class person{
public:
person()
{
name=NULL;
id=NULL;
}
void setperson(char *n,char *i);
void showperson()
{
cout<<*name<<'\t'<<*id<<endl;
}
~person()
{
delete []name;
delete []id;
}
private:
char *name,*id;
};
class stud{
public:
stud()
{
addr=NULL;
tel=NULL;
}
void setstud(char *a,char *t);
void showstud()
{
cout<<*addr<<'\t'<<*tel<<endl;
}
~stud()
{
delete []addr;
delete []tel;
}
private:
char *addr,*tel;
};
class teacher:public person{
public:
teacher():person()
{
degree=NULL;
dep=NULL;
}
void setteacher(char *deg,char *dp);
void showteacher()
{
cout<<*degree<<'\t'<<*dep<<endl;
}
~teacher()
{
delete []degree;
delete []dep;
}
private:
char *degree,*dep;
};
class student:public person{
public:
student():person()
{
old=0;
sno=NULL;
}
~student()
{
delete []sno;
}
void setstudent(int age,char *no);
void showstudent()
{
cout<<old<<'\t'<<*sno<<endl;
}
private:
int old;
char *sno;
};
class score:public student,public stud{
public:
score():student(),stud()
{
math=0;
eng=0;
}
void setscore(float ma,float en);
void showscore()
{
cout<<math<<'\t'<<eng<<endl;
}
private:
float math,eng;
};
void person::setperson(char *n,char *i)
{
name=new char [strlen (n)+1];
id=new char [strlen(i)+1];
strcpy (name,n);
strcpy(id,i);
}
void teacher::setteacher(char *deg,char *dp)
{
degree=new char[strlen(deg)+1];
dep=new char [strlen(dp)+1];
strcpy(degree,deg);
strcpy(dep,dp);
}
void stud::setstud(char *a,char *t)
{
addr=new char[strlen(a)+1];
tel=new char [strlen(t)+1];
strcpy(addr,a);
strcpy(tel,t);
}
void student::setstudent(int age,char *no)
{
old=age;
sno=new char [strlen(no)+1];
strcpy(sno,no);
}
void score::setscore(float ma,float en)
{
math=ma;
eng=en;
}
void main()
{
char name1,id1,sno1,addr1,tel1,degree1,dep1;
int old1;
float math1,eng1;
cin>>name1>>id1>>sno1>>addr1>>tel1>>degree1>>dep1>>old1>>math1>>eng1;
score c1;
teacher t1;
c1.setperson(&name1,&id1);
c1.setstudent(old1,&sno1);
c1.setstud(&addr1,&tel1);
c1.setscore(math1,eng1);
t1.setteacher(&degree1,&dep1);
c1.showperson();
c1.showstud();
c1.showstudent();
c1.showscore();
t1.showperson();
t1.showteacher();


}


我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
我的QQ餐廳可以進農場、但是農場不能進QQ餐廳
福地国际大酒店地址在哪,我要去那里办事
在哪学习技能
怎样去除纯白色羊毛衣洗不掉的污渍?
DNF柔道滑行的时候 如果加了不屈 会不会被打
七年级的成方问题
搜搜怎么的经验啊?
DNF鬼泣极限堆智力
神经病和精神病有什么区别呀?
宝音塔拉这个地址在什么地方,我要处理点事
加盟一家十字绣需要什么条件,包括门市也需要
如何吃中药?
这2首歌的名字是什么?
沈阳建筑大学函授电话?
五庄空号加点对不对
推荐资讯
USB没显示怎么办?
寻仙法宠多少钱
生物2号什么意思
我的新手礼包不见了 怎么办
大家觉得新版《红楼梦》和以前的《红楼梦》哪
找一部动画片好像有巫婆公主但是公主不是主角
高中学习怎样做?
PS3 NETWORK 密码的问题
火影什么时候才能写完啊?
帮我儿子起个名字!姓尚,最好名中取有米\豆\
急!求所有口袋妖怪的主题曲
中国移动积分商成700多分可以对换什么?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?