超市进出人员测温系统
项目功能模块
1.读入功能。主要完成进出人员信息的读入。分两种方法读入进出人员信息,分别为键盘输入和customer.txt文件读入,创建一颗二叉树,将编号较小的数据存入左子树,编号较大的数据,较大的数据。如果以键盘输入,当输入非数字时,结束读取;如果以文件读入,读到最后一行,给出提示信息,结束读取。
2.添加功能:主要完成进出人员信息的添加。首先输入编号,在已读入的信息中查询有无重复信息,若有给出提示信息;若无,继续录入其他数据,形成新节点,插入二叉树中,当数据输入结束时,给出提示信息,结束添加。
3.修改功能: 主要完成进出人员信息的修改。如果未读入信息,给出提示信息,否则首先输入编号,在已读入的信息中查询信息,若信息不存在,给出提示信息,询问是否需要添加,如果需要,则跳转添加功能;若信息存在,则输入修改后的信息,结束编辑。
4.删除功能: 主要完成进出人员信息的删除。首先输入编号,在已读入的信息中查询信息,若信息不存在,给出提示信息。若存在,则打印完整信息,并给出提示信息,以确定用户是否删除此记录,若确认删除此条记录,则找出二叉树中此节点的位置,并删除结点(不影响其孩子结点)。
5.查询功能:主要完成进出人员信息的查询。首先输入编号,在已读入的信息中查询信息,若信息不存在,给出提示信息。若存在,则打印完整信息,并给出提示信息。
6.保存功能:主要完成进出人员信息的保存。将删除、修改、添加所产生的信息变动保存入customer.txt文件中。
7.打印功能,输出当前库存中所有进出人员的详细信息。
#include<stdio.h>
#include<stdlib.h>
/*以下为自定义结构体 */
typedef struct CNode{
int customerno;//超市进出人员编号
char name[10];// 超市进出人员姓名
char sex[5];//超市进出人员性别
int age;//超市进出人员年龄
char time[15];//超市进出人员进出时间
float temperature;//超市进出人员体温
char measure[5];//超市进出人员已采取措施
struct CNode *lchild,*rchild;
}CNode,*CTree;
/*以下为自定义函数*/
int InputCTree(CTree &T);
int CreatCTree(CTree &T);
CNode *FindCTreeinsert(int customerno,CTree &T,int *flag);
CNode *FindCTreeequal(int customerno,CTree &T,int *flag);
int EditCTree(CTree &T);
CNode *InsertCTree(CTree &T);
CNode *DeleteCTree(CTree &T);
CNode *DelCTree(int customerno,CTree &T,int *flag);
CNode *Del(CTree &T);
int SearchCTree(CTree &T);
int PrintCTree(CTree &T);
int Print(CTree &T);
int Get_int(void);
int SaveCTree(CTree &T);
int Save(FILE *fp,CTree &T);