目录
前言
这是之前在学习数据结构与算法的时候,写的疫苗预约管理系统;也可以作为参考供大家使用;当然很多功能都还没有加入,后面有时间会陆续更新;
1·设计目的
通过疫苗预约管理系统这项目,来测试自身对本学期所学的知识是否掌握牢靠。同时,培养我们自身综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,对我们自身实际工作能力的具体训练和考察过程。提高自身的独立思考能力和动手能力。
2·设计内容与要求
该项目的实现需要管理者输入注射点的信息,并不管是管理者还是个人都可以查询相应的注射点信息。管理者可以对每个注射点的信息进行更改。个人可以预约某个注射点某个星期进行打疫苗,可以取消预约信息。
2·1·课题要求
要求能对5个以上(暂时不超过100个)的疫苗注射点一周内的疫苗进行预约,系统首先可输入各个注射点一周内每天的疫苗数量,市民可查询每天剩余的名额,并进行预约,预约成功时(应判断无重复预约),给市民派发一个预约号。管理人员可查询各个注射点每天的预约人数,剩余疫苗数,可按某天的所有注射点的预约量从高到低排序。 |
3·设计思路
3·1 关键问题描述
a) 如何记录个人信息
b) 如何记录某个注射点的信息
c) 时间如何与注射点链接
3·2 解决方法
1·个人信息由链表记录,存储在结构体中;
//个人
typedef struct resident{
char num1[19];//身份证号
char name[10];//名字
char address[20];//地址
int nmuber1;//已打针数
int number4;//预约号
}str2;
typedef str2 ElementType;
typedef struct LNode *PtrToLNode;
2·注射点与时间,个人信息之间采用结构体嵌套方式连接,使得各个信息被引用;
struct LNode{
ElementType Data;
PtrToLNode Next;
};
//typedef PtrToLNode Position;
typedef PtrToLNode List;
//注射点
struct Vaccination_point{
int number;//疫苗总数
int renumber;//已预约人数;
int maxnumber;//最大预约号;
PtrToLNode e;
};
struct Vaccination_point1{
int num;//注射点的序号
char nam