看完老师的代码后,我有一些疑问:
第一:我还是直接用的链队算法库,可以减少代码量,而且这不也是工程的一个简单应用吗?
第二:感觉老师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了,思维不缜密,细节处处理得不好,真的是还有好多需要学习的地方,我应该写篇阶段性学习总结了......
不足的地方我会努力去弥补的!加油。