先发布一下测试版,大家发现有bug可以提出来,最近期末了,要忙着复习。考完试,我再发完整版,写下思路、教程什么的吧。

这个程序接口定义有点多,个人感觉代码有些多,有点复杂了,不容易看懂。

#include<stdio.h>
#include<stdlib.h>
#include<string.h>typedef struct PeopleData  /*接种人信息*/
{int PhoneNum;//手机号int PeopleID;//身份证号码char PeopleName[100];//姓名int ShotTime;//用户预约的接种时间 int NodeNum;//用户预约的注射点序号 char ShotNode[100];//用户预约的注射点int ShotNum;//成功预约号int ReservedTimes;//是否预约 int Inoculate;//是否注射
}PeopleData;PeopleData People_Data[100]; //最多100个接种人typedef struct DataType  /*注射点数据*/
{int NodeNum;  //注射点序号 char NodeName[100];  //注射点名称int VaccineNum;//注射点当日疫苗数量int ReservedNum;  //注射点已预约人数
}DataType;struct TimeList //不同日期的注射点数据
{DataType data[100];struct TimeList* Next;
};typedef struct Users {char Name[100]; //用户名int PeopleID;//身份证号码int  PhoneNum;//手机号char Account[100]; //账户char Passwd[100]; //密码
}Use;Use allUser[100];//100个用户
Use User; //主要用于用户登录
int n = 1;//注册时,注册成功n++,
int N = 6;//代表当前有5个注射点
int Booking_num = 10000; //预定号码从10000开
TimeList* L;void Administrator();//管理员的账号密码
void window1();//一级菜单
int search(char Account[]);//用于登录查询账号是否存在
void Rengister();//注册系统
int Login();//登录系统
void recover();//找回账号或者密码
void Choose1();//一级菜单的选择
/*下面几个函数传入形参t,很重要,这样才能知道你是哪个用户,才能把信息准确的放进结构体里*/
void  Choose2(int t);//二级菜单的选择
void window2();//二级菜单
TimeList* CreateVaccine();//初始化
void Search_Vaccine();//查询疫苗剩余情况
void Reserved_Vaccine(int t);//预约疫苗
void Search_Reserved(int t);//查询预约
void Abolish_Reserved(int t);//取消预约
void Change_Passwd(int t);//修改密码
void window0();//管理员菜单
void  Node_Manage(int t);//注射点管理
void  Add_Node();//增加注射点
void  Delete_Node();//删除注射点
void  Change_Node();//修改注射点
void  Search_Node();//查看注射点
void  Search_User();//用户管理
void  Inoculate_Manage();//接种管理 int main()
{int i;Administrator();L = CreateVaccine();Choose1();return 0;
}
void Administrator()
{strcpy(allUser[0].Account, "2050131398");strcpy(allUser[0].Name, "Administrator");strcpy(allUser[0].Passwd, "cgl520520");allUser[0].PeopleID = 0;allUser[0].PhoneNum = 0;
}
void window1()//一级菜单
{system("CLS");printf("           __________________________________________________________\n");printf("           |                                                        |\n");printf("           |                      疫苗预约系统                      |\n");printf("           |________________________________________________________|\n");printf("           |                                                        |\n");printf("           |                                                        |\n");printf("           |                     ****1.注册****                     |\n");printf("           |                     ****2.登陆****                     |\n");printf("           |                     ****3.找回****                     |\n");printf("           |                     ****4.退出****                     |\n");printf("           |                                                        |\n");printf("           |________________________________________________________|\n");printf("\n\n           请选择你需要的功能,输入代号:");}
void Rengister()//注册系统
{char key[100];int t;system("CLS");printf("\n           ========================注册页面=======================\n");printf("\n           请输入您的姓名:");scanf("%s", &allUser[n].Name);getchar();printf("\n           请输入您的身份证号:");scanf("%d", &allUser[n].PeopleID);getchar();printf("\n           请输入您的手机号码:");scanf("%d", &allUser[n].PhoneNum);getchar();printf("\n           请输入您的账号:");scanf("%s", &allUser[n].Account);getchar();printf("\n           请输入您的密码:");scanf("%s", &allUser[n].Passwd);do{printf("\n           请再次输入您的密码:");scanf("%s", &key);if (strcmp(key, allUser[n].Passwd) == 0) {n++;t = 0;}else{t = 1;printf("\n           两次密码不一致,请重新注册\n");goto b;}} while (t == 1);printf("\n           注册成功!\n\n\n");
b:  system("pause");system("CLS");
}int Login()//登录系统
{int i;int ch = 1;char key[100];system("CLS");printf("\n           ========================登录页面=======================\n");printf("\n           请输入您的账号:");scanf("%s", &User.Account);//以下是管理员登录的,目前还没做管理员的if (strcmp(User.Account, allUser[0].Account) == 0) {do{printf("\n           输入您的密码:");scanf("%s", &key);getchar();if (strcmp(key, allUser[0].Passwd) == 0)ch = 0;else{ch = 1;printf("\n           密码错误,重新输入!\n");}} while (ch == 1);printf("\n           成功登陆!欢迎使用本系统!\n");return 0;}//至此//下面的用户登录用的ch = search(User.Account);//判断你的用户是否注册过if (!ch){printf("\n           您输入的账号未注册!\n");printf("\n           请重新登录或注册账号后再次使用本程序。 \n");system("pause");Choose1();}do //防止非法输入{printf("\n           输入您的密码:");scanf("%s", &key);getchar();if (strcmp(key, User.Passwd) == 0)ch = 0;else{ch = 1;printf("\n           密码错误,重新输入!\n");}} while (ch == 1);printf("\n           成功登陆!欢迎使用本系统!\n");for (i = 1; i < n; i++)//成功后将用户数据和注射者数据进行绑定 保持一致if (strcmp(allUser[i].Account, User.Account) == 0) {People_Data[i].PhoneNum = allUser[i].PhoneNum;People_Data[i].PeopleID = allUser[i].PeopleID;strcpy(People_Data[i].PeopleName, allUser[i].Name);People_Data[i].Inoculate = 0;return i;}
}int search(char Account[])//查询账号
{int i;for (i = 1; i < n; i++)if (strcmp(allUser[i].Account, Account) == 0)break;if (i == n)return 0;else{User = allUser[i];return 1;}
}void recover() //密码找回,这个无关紧要的代码
{int People_ID, Phone_Num;int num;int ch = 1;
a:  printf("\n           ========================找回页面=======================\n\n");printf("\n           请输入您的账号:");scanf("%s", &User.Account);getchar();ch = search(User.Account);if (!ch){printf("\n           您输入的账号并未注册!\n");system("pause");system("CLS");main();}printf("\n           请输入您的身份证号:");scanf("%d", &People_ID);getchar();printf("\n           请输入您的手机号码:");scanf("%d", &Phone_Num);getchar();if (People_ID == User.PeopleID && Phone_Num == User.PhoneNum) {printf("\n           您的密码是: %s\n\n", User.Passwd);system("pause");}else{printf("\n           您的身份信息有误!\n");printf("\n           请重新输入。 \n");system("pause");system("CLS");goto a;}}
void Choose1()//一级菜单的选择
{int t;int num;while (1) {window1();scanf("%d", &num);system("pause");system("cls");switch (num){case 1: Rengister(); break;case 2: t = Login(); Choose2(t);case 3: recover(); break;case 4: exit(0);default:break;}}
}
void window2()//二级菜单
{system("CLS");printf("           __________________________________________________________\n");printf("           |                                                        |\n");printf("           |                      疫苗预约系统                      |\n");printf("           |________________________________________________________|\n");printf("           |                                                        |\n");printf("           |                                                        |\n");printf("           |                   ****1.查询疫苗****                   |\n");printf("           |                   ****2.预约疫苗****                   |\n");printf("           |                   ****3.查询预约****                   |\n");printf("           |                   ****4.取消预约****                   |\n");printf("           |                   ****5.修改密码****                   |\n");printf("           |                   ****6.退    出****                   |\n");printf("           |                                                        |\n");printf("           |________________________________________________________|\n");printf("\n\n           请选择你需要的功能,输入代号:");}
TimeList* CreateVaccine()//初始化
{int i = 1, j;TimeList* List = NULL;TimeList* temp = (TimeList*)malloc(sizeof(struct TimeList));for (i = 1; i < N; i++) {temp->data[i].NodeNum = i;temp->data[i].VaccineNum = rand() % 100;temp->data[i].ReservedNum = 0;}strcpy(temp->data[1].NodeName, "小陈医院");strcpy(temp->data[2].NodeName, "小光医院");strcpy(temp->data[3].NodeName, "小淋医院");strcpy(temp->data[4].NodeName, "小帅医院");strcpy(temp->data[5].NodeName, "小哥医院");temp->Next = NULL;List = temp;for (j = 1; j < 7; j++) {TimeList* p = (TimeList*)malloc(sizeof(struct TimeList));for (i = 1; i < N; i++) {p->data[i].NodeNum = i;p->data[i].VaccineNum = rand() % 100;p->data[i].ReservedNum = 0;}strcpy(p->data[1].NodeName, "小陈医院");strcpy(p->data[2].NodeName, "小光医院");strcpy(p->data[3].NodeName, "小淋医院");strcpy(p->data[4].NodeName, "小帅医院");strcpy(p->data[5].NodeName, "小哥医院");p->Next = NULL;temp->Next = p;temp = temp->Next;}return List;
}
void  Choose2(int t)//二级菜单的选择
{int num;if (t == 0) {while (1) {window0();scanf("%d", &num);getchar();system("pause");system("cls");switch (num){case 1: Node_Manage(t); break;case 2: Search_User(); break;case 3: Inoculate_Manage(); break;case 4: Choose1(); break;default:break;}}}else {while (1) {window2();scanf("%d", &num);getchar();system("cls");switch (num){case 1: Search_Vaccine(); break;case 2: Reserved_Vaccine(t); break;case 3: Search_Reserved(t); break;case 4: Abolish_Reserved(t); break;case 5: Change_Passwd(t); break;case 6: Choose1(); break;default:break;}}}
}
void Search_Vaccine()//疫苗查询
{int i, j;int day;int num;TimeList* T = L;printf("\n           ========================疫苗查询=======================\n");if (N == 0) {printf("\n           当前没有注射点!");goto a;}printf("\n           请选择查询日期:");scanf("%d", &day);getchar();while (day < 1 || day>7)  //非法输入 {printf("\n           输入错误,请重新输入:");scanf("%d", &day);getchar();}for (i = 1; i <= day; i++) { //计算当天疫苗剩余总量num = 0;for (j = 1; j < N; j++) {num += T->data[j].VaccineNum;}T = T->Next;}printf("\n           当天所有注射点疫苗剩余总数为%d\n", num);T = L;for (i = 1; i < day; i++) { //将指针移动到当天T = T->Next;}for (j = 1; j < N; j++) {  //输出当天每个注射点剩余疫苗量printf("\n           %s的疫苗数量剩余%d支\n\n", T->data[j].NodeName, T->data[j].VaccineNum);}
a:  system("pause");
}void Reserved_Vaccine(int t)//疫苗预约
{int i, j, flag = 1, times = 1;int day;char ch[100];TimeList* T = L;printf("\n           ========================疫苗预约=======================\n");if (N == 0) {printf("\n           当前没有注射点!"); //判断输入的注射点是否存在 system("pause");goto a;}if (People_Data[t].Inoculate == 1) {printf("\n           您已经注射过,无需再预约!"); //目前设置的是只一针,注射过便不能预约 system("pause");goto a;}if (People_Data[t].ReservedTimes == 0) { // 没有预约过才能预约printf("\n           请选择预约日期:");scanf("%d", &day);getchar();while (day < 1 || day>7)  //非法输入 {printf("\n           输入错误,请重新输入:");scanf("%d", &day);}for (i = 1; i < day; i++) { //将指针移动到当天T = T->Next;}printf("\n           请选择预约的医院: ");scanf("%s", ch);getchar();for (j = 1; j < N; j++) {flag++;//flag用于判断输入的医院是否存在的if (strcmp(ch, T->data[j].NodeName) == 0) { //跳到当前医院printf("\n           当前是%d.%s", T->data[j].NodeNum, T->data[j].NodeName);getchar();if (T->data[j].VaccineNum <= 0) { //判断疫苗库存printf("\n           %s当前疫苗数量不足\n", T->data[j].NodeName);printf("\n           请重新预约!\n");getchar();break;}else if (T->data[j].ReservedNum >= T->data[j].VaccineNum) //判断预约人数{printf("\n           %s当前预约人数已满\n", T->data[j].NodeName);printf("\n           请重新预约!\n");getchar();break;}else {printf("\n           预约成功!请按时到注射点接种疫苗\n"); //成功后分配预约号printf("\n           您的预约号是%d", Booking_num);T->data[j].VaccineNum--; //某天某点的疫苗数量减一T->data[j].ReservedNum++;//某天某点的预约数量加一People_Data[t].ShotNum = Booking_num;//分配预约号Booking_num++;People_Data[t].ShotTime = day;//预约的注射时间People_Data[t].ReservedTimes = 1;//表示已经预约过People_Data[t].NodeNum = T->data[j].NodeNum;strcpy(People_Data[t].ShotNode, T->data[j].NodeName);//预约的注射点getchar();break;}break;}else if (strcmp(ch, T->data[j].NodeName) != 0 && flag == N) { //flag用于判断输入的医院是否存在的printf("\n           当前注射点不存\n");printf("\n           请重新预约!\n");getchar();}}}else {  // 有预约过不能预约printf("\n           已经有预约,不能重复预约!\n\n\n");a:     system("pause");}
}void Search_Reserved(int t)//预约查询
{TimeList* T = L;int i;printf("\n           ========================预约查询=======================\n");//利用t找到你是谁,读取你的相关信息for (i = 1; i < People_Data[t].ShotTime; i++) { //将指针移动到当天T = T->Next;}if (People_Data[t].Inoculate == 1) {  //如果你注射过就没有预约信息了 printf("\n           您已经注射过!\n");}else {if (People_Data[t].ReservedTimes == 1 && T->data[People_Data[t].NodeNum].VaccineNum == 0) {  //防止管理员修改了注射点数据为0,错误显示 printf("\n           抱歉! 当前库存不足,当前预约无效,请重新预约!\n\n\n");People_Data[t].ReservedTimes == 0;goto a;}if (People_Data[t].ReservedTimes == 1 && strcmp(T->data[People_Data[t].NodeNum].NodeName, People_Data[t].ShotNode) != 0) { //防止管理员删除了注射点,错误显示 printf("\n           抱歉! 当前注射点不存在,当前预约无效,请重新预约!\n\n\n");People_Data[t].ReservedTimes == 0;goto a;}else if (People_Data[t].ReservedTimes == 1) { //如果有预约输出相关信息 printf("\n           您的预约的注射点是:%s\n", People_Data[t].ShotNode);printf("\n           您的预约的注射时间是:星期%d\n", People_Data[t].ShotTime);printf("\n           您的预约的预约号是:%d\n", People_Data[t].ShotNum);}else {printf("\n           您当前没有预约\n\n\n");//没有预约}}
a:    system("pause");
}void Abolish_Reserved(int t)//取消预约
{char ch;int i, j;TimeList* T = L;printf("\n           ========================取消预约=======================\n");if (People_Data[t].ReservedTimes == 1) {printf("\n           确认是否取消Y/N:");scanf("%c", &ch);getchar();if (ch == 'Y' || ch == 'y') {for (i = 1; i < People_Data[t].ShotTime; i++) { //跳到当前预约的时间T = T->Next;}getchar();for (j = 1; j < N; j++) {if (strcmp(T->data[j].NodeName, People_Data[t].ShotNode) == 0) {  //跳到当前预约的地点T->data[j].VaccineNum++;//某天某点的疫苗数量加一T->data[j].ReservedNum--;//某天某点的预约数量减一People_Data[t].ReservedTimes = 0;printf("\n           取消成功!");system("pause");break;}}}}else {printf("\n           您当前没有预约\n\n\n");system("pause");}
}void Change_Passwd(int t)//修改密码
{int i;char key[100];printf("\n           ========================修改密码=======================\n");for (i = 1; i <= n; i++)if ((People_Data[t].PeopleID == allUser[i].PeopleID) && (People_Data[t].PhoneNum == allUser[i].PhoneNum))  //确保 allUser于People_Data数据一致 break;printf("\n           请输入当前密码:");scanf("%s", &key);getchar();if (strcmp(key, allUser[i].Passwd) == 0) {  //首先原密码要正确 ,再是修改的密码两次输入一致 printf("\n           请输入修改后密码:");scanf("%s", &User.Passwd);printf("\n           请再次输入您的密码:");scanf("%s", &key);getchar();if (strcmp(key, User.Passwd) == 0) {strcpy(allUser[i].Passwd, User.Passwd); //一致则修改成功 printf("\n           修改成功!  ");system("pause");}else{printf("\n           两次密码不一致,请重新修改\n");//不一致则重新修改 system("pause");system("cls");}}else {printf("\n           当前密码错误,不能修改!\n");//原密码错误不能修改system("pause");}
}void window0()//管理员菜单
{system("CLS");printf("           __________________________________________________________\n");printf("           |                                                        |\n");printf("           |                   疫苗预约管理员系统                   |\n");printf("           |________________________________________________________|\n");printf("           |                                                        |\n");printf("           |                                                        |\n");printf("           |                   ****1.站点管理****                   |\n");printf("           |                   ****2.用户管理****                   |\n");printf("           |                   ****3.接种管理****                   |\n");printf("           |                   ****4.退    出****                   |\n");printf("           |                                                        |\n");printf("           |________________________________________________________|\n");printf("\n\n           请选择你需要的功能,输入代号:");}void  Node_Manage(int t)//注射点管理
{int num;while (1) {system("CLS");printf("           __________________________________________________________\n");printf("           |                                                        |\n");printf("           |                   疫苗预约管理员系统                   |\n");printf("           |________________________________________________________|\n");printf("           |                                                        |\n");printf("           |                                                        |\n");printf("           |                  ****1.增加注射点****                  |\n");printf("           |                  ****2.删除注射点****                  |\n");printf("           |                  ****3.修改注射点****                  |\n");printf("           |                  ****4.查看注射点****                  |\n");printf("           |                  ****5.退      出****                  |\n");printf("           |                                                        |\n");printf("           |________________________________________________________|\n");printf("\n\n           请选择你需要的功能,输入代号:");scanf("%d", &num);getchar();system("cls");switch (num){case 1: Add_Node(); break;case 2: Delete_Node(); break;case 3: Change_Node(); break;case 4: Search_Node(); break;case 5: Choose2(t); break;default:break;}}
}void Add_Node() //增加注射点
{TimeList* T = L;char name[100];int num;int i = 1;printf("\n           ========================增加注射点======================\n");printf("\n           请输入注射点名称:");scanf("%s", &name);getchar();while (T != NULL) {  //给不同时间的新注射点赋值初始化 strcpy(T->data[N].NodeName, name);printf("\n           请输入周%d注射点疫苗数量:", i);scanf("%d", &num);getchar();T->data[N].VaccineNum = num;T->data[N].NodeNum = N;T->data[N].ReservedNum = 0;i++;T = T->Next;}N++; //注射点总数加1 printf("\n           增加成功!\n\n\n");system("pause");
}void Delete_Node()
{TimeList* T = L;int num;int i, j;printf("\n           ========================删除注射点======================\n");printf("\n           请输入需要删除的注射点序号:");scanf("%d", &num);if (N == 0) {    //注射点没了 printf("\n           当前没有注射点!");goto a;}while (num < 1 || num>N)  //非法输入 {printf("\n           输入错误,请重新输入:");scanf("%d", &num);getchar();}for (j = 1; j <= 7; j++) {for (i = num; i < N; i++) {T->data[i] = T->data[i + 1];   //将后一个数据覆盖前一个数据 }T = T->Next;}T = L;for (j = 1; j <= 7; j++) {for (i = 1; i < N; i++) {   //重新排注射点序号 T->data[i].NodeNum = i;}T = T->Next;}N--;printf("\n           删除成功!\n\n\n");
a:  system("pause");}void  Change_Node()
{int day;int num;char ch[100];int i, j, flag = 1;TimeList* T = L;printf("\n           ========================修改注射点======================\n");if (N == 0) {printf("\n           当前没有注射点!");goto a;}printf("\n           请输入需要修改的日期:");scanf("%d", &day);getchar();while (day < 1 || day>7)  //非法输入 {printf("\n           输入错误,请重新输入:");scanf("%d", &day);}for (i = 1; i < day; i++) { //将指针移动到当天T = T->Next;}printf("\n           请选择需要修改的医院: ");scanf("%s", &ch);getchar();for (j = 1; j < N; j++) {flag++;if (strcmp(T->data[j].NodeName, ch) == 0) {  //跳到当前的地点printf("\n           请输入当前疫苗数量:");scanf("%d", &num);getchar();T->data[j].VaccineNum = num;system("pause");break;}else if (strcmp(ch, T->data[j].NodeName) != 0 && flag == N) { //flag用于判断输入的医院是否存在的printf("\n           当前注射点不存在\n");printf("\n           请重新修改!\n");getchar();}}
a: system("pause");
}void  Search_Node()
{int i, j;int day;int num;TimeList* T = L;printf("\n           ========================查看注射点======================\n");if (N == 0) {printf("\n           当前没有注射点!");goto a;}printf("\n           请选择查询日期:");scanf("%d", &day);getchar();while (day < 1 || day>7)  //非法输入 {printf("\n           输入错误,请重新输入:");scanf("%d", &day);getchar();}for (i = 1; i <= day; i++) { //计算当天疫苗剩余总量num = 0;for (j = 1; j < N; j++) {num += T->data[j].VaccineNum;}T = T->Next;}printf("\n           当天所有注射点疫苗剩余总数为%d\n", num);T = L;for (i = 1; i < day; i++) { //将指针移动到当天T = T->Next;}for (j = 1; j < N; j++) {  //输出当天每个注射点剩余疫苗量printf("\n           %s的疫苗数量剩余%d支\n\n", T->data[j].NodeName, T->data[j].VaccineNum);}
a:  system("pause");
}void  Search_User() //用户管查询
{int num;printf("\n           ========================用户查询========================\n");printf("\n           请输入用户编号:");scanf("%d", &num);getchar();while (num<1 || num>n - 1) {  //非法输入 printf("\n           输入错误,请重新输入:");scanf("%d", &num);getchar();}if (People_Data[num].PeopleID == 0 || People_Data[num].PhoneNum == 0) { //防止用户没登录没有数据输出异常 printf("\n           该用户尚未登录,暂无数据!");}else {  //有登录用户的注射相关信息 printf("\n           姓名:%s", People_Data[num].PeopleName);printf("\n           身份证号:%d", People_Data[num].PeopleID);printf("\n           电话号码:%d", People_Data[num].PhoneNum);if (People_Data[num].Inoculate == -1) {  //判断是否爽约 printf("\n           该用户已经爽约\n");People_Data[num].ReservedTimes = 0;goto a;}else if (People_Data[num].Inoculate == 0) {  //没爽约并且有预约 if (People_Data[num].ReservedTimes == 1) {printf("\n           预约的注射地点:%s", People_Data[num].ShotNode);printf("\n           预约的注射时间:%d", People_Data[num].ShotTime);printf("\n           预约的注射单号:%d", People_Data[num].ShotNum);}else {   //没有预约 printf("\n           该用户当前暂无预约\n");}}else {printf("\n           该用户已经注射!\n");}}printf("\n\n\n");
a:  system("pause");
}void  Inoculate_Manage() //接种管理
{char ch[10];int num;printf("\n           ========================接种管理========================\n");printf("\n           请输入用户编号:");scanf("%d", &num);getchar();while (num<1 || num>n - 1) { //非法输入 printf("\n           输入错误,请重新输入:");scanf("%d", &num);getchar();}if (People_Data[num].PeopleID == 0 || People_Data[num].PhoneNum == 0) {   //防止用户没登录没有数据输出异常 printf("\n           该用户尚未登录,暂无数据!");}else {printf("\n           姓名:%s", People_Data[num].PeopleName);if (People_Data[num].ReservedTimes == 1) { //有预约输出用户的注射相关信息 printf("\n           预约的注射地点:%s", People_Data[num].ShotNode);printf("\n           预约的注射时间:%d", People_Data[num].ShotTime);printf("\n           预约的注射单号:%d", People_Data[num].ShotNum);printf("\n\n           该用户是否注射Y/N: ");//由管理员判断用户是否注射 scanf("%s", &ch);getchar();if (strcmp(ch, "Y") == 0 || strcmp(ch, "y") == 0) {People_Data[num].Inoculate = 1;}else {People_Data[num].Inoculate = -1;}printf("\n           操作成功!\n\n\n");}else {   //没有预约 printf("\n           该用户当前暂无预约\n");}}system("pause");
}

疫苗预约管理系统——课程设计相关推荐

  1. php mysql预约_PHP+MySQL实验室预约管理系统的设计与实现

    随着我国教育的改革在校学生人数的不断增加,在校大学生的数量也变的越来越多,同时面临的就是如何更加方便快捷和高效的管理高校实验室预约的问题,传统模式的实验室预约管理明显已经不能够满足当下的需求,于是我们 ...

  2. 基于PHP+MySQL实验室预约管理系统的设计与实现

    随着我国教育的改革在校学生人数的不断增加,在校大学生的数量也变的越来越多,同时面临的就是如何更加方便快捷和高效的管理高校实验室预约的问题,传统模式的实验室预约管理明显已经不能够满足当下的需求,于是我们 ...

  3. 【计算机毕业文章】基于SpringBoot的医院疫苗接种信息管理系统的设计与实现

    摘 要 近几年来,随着人们认知的加深,逐渐认识到疫苗的重要性.因此,国家也在大力扶持这一卫生事业,疫苗的接种关乎国泰民安的大事.但是目前很多医院的疫苗的接种工作,还是依靠人工去进行管理,久而久之,当接 ...

  4. 大一java图书馆管理系统课程设计

    大一java图书馆管理系统课程设计 代码仅供参考!!!仅供参考!!! 效果图如下 管理员用户名:123  密码123 密码错误的话进入项目resources文件夹有个LMS数据库,使用数据库客户端打开 ...

  5. 物资管理系统 c语言,物资管理系统课程设计报告.doc

    物资管理系统课程设计报告 中 国 地 质 大 学 本科生课程论文封面 课程名称 c语 言 课 程 设 计课程设计评语2 目 录3 1.课程论文题目4 2.程序设计思路4 3.功能模块图5 4.数据结构 ...

  6. java成绩管理系统论文总结,JAVA论文成绩管理系统课程设计

    JAVA论文成绩管理系统课程设计 课课 程程 设设 计计 论论 文文 基于基于 JAVAJAVA 的学生成绩管理系统的设计与实现的学生成绩管理系统的设计与实现 学生姓名学生姓名 学学 号号 年级专业年 ...

  7. C语言课程学籍管理课程书面报告,C语言学籍管理系统课程设计报告书

    <C语言学籍管理系统课程设计报告书>由会员分享,可在线阅读,更多相关<C语言学籍管理系统课程设计报告书(30页珍藏版)>请在人人文库网上搜索. 1.C语言程序设计课程设计报告学 ...

  8. html课堂考勤系统源码,考勤管理系统课程设计源码

    考勤管理系统课程设计源码 源码描述: 主体分两个大块 员工信息 个人信息查询,员工信息修改,修改密码,添加用户,删除用户 企业管理 考勤登记,基本工资设置,员工考勤,自动生成变动工资表,自动生成福利费 ...

  9. java仓库管理设计报告_仓库管理系统(课程设计JSPJAVA大学设计).doc

    仓库管理系统(课程设计JSPJAVA大学设计) 摘 要 随着经济的不断繁荣以及加入WTO后市场环境的变化,对企业的生产经营提出了更高的要求,企业必须综合利用各种先进制造技术,在网络与信息技术的支持下, ...

最新文章

  1. Java基础学习总结(1)——equals方法
  2. 【算法与数据结构】B-树学习笔记
  3. php和python区别-Python与PHP的一些区别
  4. Python生成器主要用法
  5. 西安活动 | 2019年1月13号 拥抱开源, 又见.NET 线下交流活动报名进行中
  6. 计组之总线:3、总线操作和定时(同步定时、异步定时、版同步通信、分离式通信)
  7. Haproxy的安装与配置
  8. MVC3.0与C#截取字符串
  9. SpringMVC+Spring Data JPA +Bootstrap 分页实现和模糊查询分页
  10. Kconfig Kbuild
  11. IDEA中阿里p3c代码规范
  12. android 倒计时类,Android倒计时工具类
  13. 项目管理工具一:职责清晰的6W1H原则
  14. 信号处理simulink仿真-DSP系统工具箱
  15. Typora配置PicGo提示Failed to fetch问题解决
  16. java栅栏_Java并发工具类(栅栏CyclicBarrier)
  17. linux五笔教程,RHEL6 64位操作系统安装极点五笔输法
  18. WAMP 建立配置自己的网站
  19. between oracle的用法,关于 oracle between and的用法! | 学步园
  20. Opencv之给图片加水印

热门文章

  1. sdut2190-救基友记1
  2. ios 检测是否联网_具透 | 你可能不知道,iOS 10 有一个中国「特供」的联网权限功能...
  3. 怎么查同一网络下的计算机,Windows下查看同局域网其它主机MAC地址
  4. Wireshark网络抓包分析
  5. (阅读笔记)PARE:A Simple and Strong Baseline for Monolingual and MultilingualDistantly Supervis
  6. 杜利特尔 (Doolittle)矩阵分解法求线性方程组的解
  7. DesignPattern - 工厂模式【创建型】
  8. Spring详解 | IOC_DI_Bean | 无知的我费曼笔记(图文排版无水印)
  9. 行式数据库和列式数据库区别
  10. woe分析_信用评分模型中WOE、IV详解