| 查看: 159 | 回复: 2 | |||
| 【奖励】 本帖被评价1次,作者烂熊邓增加金币 0.5 个 | |||
| 当前主题已经存档。 | |||
[资源]
【原创】一个异质链表的代码:
|
|||
|
////这个程序是两个文件组成: #include"异质链表.h" int main() {people *head=0,*end,*p; people *p1=0; people *q=0; int i,j; while(true) {cout<<"请选择:1:添加,2:显示,3:删除,4:退出"< switch(i) {case 1: cout<<"请选择:1:学生,2:教授,3:职工"< switch(j) {case 1: p=new student ;break; case 2: p=new professor ;break; case 3: p=new worker ;break; } if(head==0) {head=p; end=p;} else {end->next=p; end=p;} end->set(); end->next=0; break; case 2: for(p=head;p;p=p->next) p->show(); break; case 3: int m; cout<<"请输入要删除的元素的身份证号:"; cin>>m; if(head->id==m) {q=head; head=head->next; } else for(p1=head;p1->next;p1=p1->next) {if(p1->next->id==m) q=p1->next; p1->next=q->next; break; } if(q) delete(q); break; case 4: break; } ![]() ![]() if(i==4) break; } return 0; } //第二个文件: #include #include using namespace std; class people {protected: string name; string sex; int id; public: people *next; void virtual set()=0; void virtual show()=0; }; class student:public people { string grade; string average; public: void set() {cout<<"姓名:"; cin>>name; cout<<"性别:"; cin>>sex; cout<<"身份证:"; cin>>id; cout<<"年级:"; cin>>grade; cout<<"平均分:"; cin>>average; cout< void show() {cout<<"姓名:"< }; class professor:public people { float salary; public: void set() {cout<<"姓名:"; cin>>name; cout< cin>>sex; cout< cin>>id; cout<<"工资:"; cin>>salary; } void show() {cout<<" 姓名:"< class worker:public people { float hour; public: void set() {cout<<"姓名:"; cin>>name; cout<<"性别:"; cin>>sex; cout< cin>>id; cout<<"工作时间:"; cin>>hour; cout< void show() {cout<<"姓名:"< 这个程序可以把case3写成注释; 你在试试; case3的删除部分是有点问题;我们就交流交流; [ Last edited by 烂熊邓 on 2009-6-12 at 12:26 ] |
» 猜你喜欢
0856求调剂
已经有13人回复
0703化学
已经有11人回复
329求调剂
已经有7人回复
321求调剂
已经有8人回复
0856材料化工调剂 总分330
已经有12人回复
309求调剂
已经有3人回复
070300化学354求调剂
已经有4人回复
330分求调剂
已经有3人回复
299求调剂
已经有8人回复
一志愿北京理工大学本科211材料工程294求调剂
已经有6人回复
3楼2009-08-13 13:39:01
简单回复
烂熊邓2楼
2009-06-12 12:27
回复


















回复此楼