第七周项目5-排队看病模拟

来源:互联网 发布:王者荣耀知乎 编辑:程序博客网 时间:2024/05/22 15:21

看完老师的代码后,我有一些疑问:

第一:我还是直接用的链队算法库,可以减少代码量,而且这不也是工程的一个简单应用吗?

第二:感觉老师case1处判断病人病历号是否重复就是多此一举呀。

第三:老师的题目要求叙述不清呀;第四个功能,当输出完排队病人的病历号之后是看完这些病人再退出呢,还是直接退出呢。看了老师的代码后才知道老师具体想表达什么意思!

当然,也有可能是我理解能力不行!对工程的理解还不到位,所以才有这些问题。

代码:

#include<bits/stdc++.h>#include"../链队算法库/liandui.h"using namespace std;int main(){    int a;    liandui *p;    datanode *k;    initliandui(p);    while(cin>>a)    {        switch(a)        {        case 1:///我的这个没有病历号查重这一项,感觉这一项很多余呀            int da;            cin>>da;            rudui(p,da);            break;        case 2:            chudui(p);///链队为空就代表没人呗,因为用的链队算法库,所以也不好大改            break;        case 3:            k=p->fron;            if(k==NULL)                cout<<"没有病人!!!"<<endl;            else            {                cout<<"排队病人的病历号:";                while(k!=NULL)                {                    cout<<k->data<<' ';                    k=k->next;                }                cout<<endl;                //cout<<k->data<<endl;            }            break;        case 4:            if(lianduiempty(p))                cout<<"没有待诊的病人!";            while(!lianduiempty(p))            {                cout<<"不再接收病人,剩余病人的病历号为:";                cout<<' '<<chudui(p)<<endl;///看完这些人就完了            }            exit(0);            break;        case 5:            cout<<"未就诊病人请明天再来";            xiaohui(p);            exit(0);///不管还有没有病人在排队,医生今天反正是不看病了!            break;        }    }    return 0;}

运行结果:


知识点总结:
  反正东西还是那些东西,我们都明白老师的良苦用心,希望我们能够多写多练(就是天才也要多练的呀!)。线性数据结构还比较简单,非线性结构就比较难了!我会学好线性结构的!

心得体会:
  感觉就自己写的这么点破代码实在是太low了,思维不缜密,细节处处理得不好,真的是还有好多需要学习的地方,我应该写篇阶段性学习总结了......

不足的地方我会努力去弥补的!加油奋斗