24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 491  |  回复: 8
当前主题已经存档。

烂熊邓

金虫 (小有名气)

自然自由者

[交流] 【讨论】”用面向对象的方法实现一个异质链表“的一实验题

我顺便就把我们的一次实验题给你看看:
        "用面向对象的方法实现一个异质链表。以大学环境为例,包括学生、职员、教授,希望对这些人的信息进行管理。
        学生:姓名、年龄、身份证、年级、平均成绩
        职员:姓名、年龄、身份证、小时工资
        教授:姓名、年龄、身份证、年工资
        要求实现3个操作:
        插入、删除、打印"
你们试试看>>>>>>
把你们写好的代码就直接发在我们的交流交流........
回复此楼

» 猜你喜欢

我还年轻,我渴望一直在路上
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

woshilsh

荣誉版主 (职业作家)

优秀版主


小木虫(金币+0.5):给个红包,谢谢回帖交流
本版有C++答疑顾问,转帖,解决不了可以去那里求助滴
[center][url=http://www.91cool.net/][img]http://id.91cool.net/sign/?name=小木虫印&say=各位版主辛苦了![/img][/url][/center]
2楼2009-06-05 21:47:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hxz

木虫 (正式写手)

★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
sunxiao(金币+3,VIP+0):谢谢参与 6-11 23:15
建个基类 然后学生教授那些继承过去
链表就算了 stl有现成的list
3楼2009-06-09 17:06:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

木叶清风

木虫 (正式写手)

★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
sunxiao(金币+3,VIP+0):谢谢参与 6-11 23:15
你这只是想要代码,方法我在答疑帖里面都说过了
www.cvdelver.com
4楼2009-06-09 18:25:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

烂熊邓

金虫 (小有名气)

自然自由者

我的代码:异质链表

★ ★ ★ ★
sunxiao(金币+4,VIP+0):谢谢分享,欢迎大家讨论 6-11 23:16
///这个是有两个文件组成:

#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:退出"<              cin>>i;

                switch(i)
                        {case 1:
                  cout<<"请选择:1:学生,2:教授,3:职工"<                           cin>>j;
                          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;p=p->next)
                                         {if(p->id==m)
                                                q=p;
                                        p1=p1->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<         cout<<"性别:";
        cin>>sex;
        cout<         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<         cout<<"身份证:";
        cin>>id;
        cout<<"工作时间:";
        cin>>hour;
        cout<         }

        void  show()
        {cout<<"姓名:"< };


你可以运行来看看;有什么好想法交流交流
我还年轻,我渴望一直在路上
5楼2009-06-11 13:01:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ms98

★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
wangen994(金币+2,VIP+0):谢谢交流,O(∩_∩)O哈哈~ 6-19 16:39
可以修改一下。
class people
{protected:              //这里做成protected有什么深意吗?从含义来看,private好些
        string name;
        string sex;
        int id;
...

class professor:public people
{
  float salary;            //很老的写法,一般建议不省略private
public:      
   void set()...          //我们不是BS,一般还是按照公有函数放前面,私有成员放后面的格式写好
6楼2009-06-19 14:43:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

烂熊邓

金虫 (小有名气)

自然自由者

回复ms98

★ ★
wangen994(金币+2,VIP+0):感谢你的参与讨论 6-27 22:28
你说的
一个)那里写成保护型的是因为里边有个 指针所有就要做成保护型的或者是公有的型的;
第二:
关于float salary的写法问题。我想学了c++的就都知道不明写的就是代表私有型的;
第三:
我们的学习的就是把数据称员放在前面的,函数就放在后面的

你就可以把这个代码拿到c++的去运行一下看看结果;
我还年轻,我渴望一直在路上
7楼2009-06-27 22:24:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shipsw

木虫 (正式写手)


小木虫(金币+0.5):给个红包,谢谢回帖交流
其实就是让你写一个类而已。
内部写一些插入,删除等操作的成员函数。
复杂点的写个基类 人
然后继承出 类 学生,教授 等等。。。
选择了这条路也就放弃了其他的路了。
8楼2009-08-07 10:14:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ms98

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
wangen994(金币+1,VIP+0):感谢参与讨论 8-7 16:34
引用回帖:
Originally posted by 烂熊邓 at 2009-6-27 22:24:
你说的
一个)那里写成保护型的是因为里边有个 指针所有就要做成保护型的或者是公有的型的;
第二:
关于float salary的写法问题。我想学了c++的就都知道不明写的就是代表私有型的;
第三:
我们的学习的就是 ...

翻了翻老帖子才发现还有专门回给我的:
1、不知道你在说什么,如果有个指针就要保护的话,那protect就不会是最有争议的类型了。
2、我想稍微有点常识的都知道不允许省略类型。
3、你们学的有问题...

有机会做点实践,看看设计模式方面的书,写代码和写好代码是两回事。
9楼2009-08-07 14:54:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 烂熊邓 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 材料学硕333求调剂 +10 北道巷 2026-03-24 10/500 2026-03-28 23:06 by 无际的草原
[考研] 347求调剂 +3 山顶见α 2026-03-25 3/150 2026-03-28 14:13 by 唐沐儿
[考研] 085600 286分 材料求调剂 +7 麻辣鱿鱼 2026-03-27 8/400 2026-03-28 12:17 by zllcz
[考研] 085701环境工程,267求调剂 +16 minht 2026-03-26 16/800 2026-03-28 12:16 by zllcz
[考研] 0703化学求调剂,各位老师看看我!!! +5 祁祺祺 2026-03-25 5/250 2026-03-27 21:44 by 东方猪猪
[有机交流] 高温高压反应求助 10+4 chibby 2026-03-25 4/200 2026-03-27 21:08 by BT20230424
[考研] 一志愿上海理工能源动力(085800)310分求调剂 +3 zhangmingc 2026-03-27 4/200 2026-03-27 19:01 by 给你你注意休息
[考研] 266分求材料化工冶金矿业等专业的调剂 +4 哇呼哼呼哼 2026-03-26 4/200 2026-03-27 17:02 by zhyzzh
[考研] 286求调剂 +4 lim0922 2026-03-26 4/200 2026-03-27 10:28 by guoweigw
[考研] 求调剂,一志愿 南京航空航天大学大学 ,080500材料科学与工程学硕 +4 @taotao 2026-03-26 5/250 2026-03-27 08:10 by hypershenger
[考研] 341求调剂 +7 青柠檬1 2026-03-26 7/350 2026-03-27 00:19 by wxiongid
[考研] 321求调剂 +6 wasdssaa 2026-03-26 6/300 2026-03-26 20:57 by sanrepian
[考研] 325求调剂 +3 Aoyijiang 2026-03-23 3/150 2026-03-26 20:46 by 不吃魚的貓
[考研] 机械学硕总分317求调剂!!!! +4 Acaciad 2026-03-25 4/200 2026-03-25 19:59 by hanserlol
[考研] 0854人工智能方向招收调剂 +4 章小鱼567 2026-03-24 4/200 2026-03-25 13:29 by 2177681040
[考研] 282求调剂 +3 wcq131415 2026-03-24 3/150 2026-03-25 12:16 by userper
[考研] 一志愿武理085500机械专业总分300求调剂 +3 an10101 2026-03-24 7/350 2026-03-25 00:00 by 山鬼0-
[有机交流] 有机合成求助 20+3 FENGSHUJEI 2026-03-23 5/250 2026-03-24 19:31 by 88817753
[考研] 341求调剂(一志愿湖南大学070300) +5 番茄头--- 2026-03-22 6/300 2026-03-23 23:45 by Txy@872106
[考研] 070300,一志愿北航320求调剂 +3 Jerry0216 2026-03-22 5/250 2026-03-23 09:16 by 。。堂堂
信息提示
请填处理意见