程序设计基础课程设计 —— 疫苗预约管理系统

简介: 程序设计基础课程设计 —— 疫苗预约管理系统

一、 设计目的

   通过本课程设计,目的是最终达到能够掌握问题的分析能力,掌握数据结构的综合运用能力,掌握数据结构与算法的代码编写与测试能力和掌握基本的程序设计思想、方法和调试技术的能力还有掌握文档编写能力和团队协作能力。

   由于疫情突如其来的出现,而且由于疫情防控的需要人们不能老是待在外面,为此疫苗预约管理系统便随之出现。该项目疫苗预约系统是计算机编程技术与疫苗管理相结合的产物,人们能够通过疫苗预约系统实现对疫苗的高效管理。随着计算机技术的不断提高,手机、计算机已经深入到社会生活的各个角落,采用人工疫苗预约的方法,不仅效率低,易出错,手续繁琐,而且耗费大量人力,而疫苗预约管理系统就很好地解决了这方面的缺点。该系统能够让医护人员对疫苗接种点和疫苗数量的信息进行了解,还有对于预约了要接种疫苗的人员等进行高效的管理,同时让人们能够更加方便的查询疫苗接种地点的疫苗剩余数量,和对于疫苗接种预约,查询或者取消等功能的使用,在用户的具备一定的计算机操作能力的前提下,便可以使用该疫苗预约管理系统以提高疫苗使用的管理效率。

   本次课程设计为数据结构课程的一个实践,需要结合本课程的所学和自身经验。也让同学们在这次课程设计的实现过程中更加彻底的掌握数据结构的知识,更为熟练的进行代码设计和实现。

回到文章结尾

二、 设计内容与要求

(一)设计要求

       本课程要求设计一个疫苗预约管理系统。主要包括能对5个以上(暂时不超过100个)的疫苗注射点一周内的疫苗进行预约,系统首先可输入各个注射点一周内每天的疫苗数量,市民可查询每天剩余的名额,并进行预约,预约成功时(应判断无重复预约),给市民派发一个预约号。管理人员可查询各个注射点每天的预约人数,剩余疫苗数,可按某天的所有注射点的预约量从高到低排序。

       因为本项目开发的软件系统是疫苗预约管理。疫苗预约管理的功能是:

       开头先显示疫苗预约管理以及作者名字(停留一秒),接着清屏出现系统选着页面。

       系统选择页面:通过输入数字进入要操作的功能:

               1. 使用帮助。

               2. 进入系统。进入主函数菜单页面。

               3. 退出系统。

(二)主函数菜单页面

可通过菜单选择要操作的功能:

  1. 疫苗预约管理系统使用说明(帮助)。提示使用者疫苗预约管理系统使用方法。
  2. 输入各注射点某天的总疫苗数量。工作人员对于信息的输入。
  3. 查询剩余疫苗数量。(包括1.查询某注射点某天的剩余疫苗数量。输出某注射点某天的剩余疫苗数量2.查询某天所有注射点的剩余疫苗数量(按数量从高到低排序)。输出某天所有注射点的剩余疫苗数量。3.查询所有注射点的剩余疫苗数量。输出所有注射点的剩余疫苗数量)根据用户选择的不同,进入不同功能,输出不一样的东西。
  4. 个人预约。输入个人信息以及要去预约的注射点和日期。
  5. 查询个人预约信息。输入个人信息输出个人预约信息。
  6. 取消个人预约。输入个人信息取消个人预约。
  7. 查询某注射点本周内打第二针的人数。输入注射点名字查询该注射点本周内是否有打第二针的人数,如果有则输出人数,反之则没有。
  8. 爽约记录。输入个人信息查询是否有爽约记录。
  9. 已打疫苗登记。已打疫苗的人输入已打信息登记。
  10. 退出系统。

三、 设计思路

(一)界面设计

       疫苗预约管理的页面有系统选择页面、主函数菜单页面(主控界面)、帮助页面、输入疫苗信息页面、查询剩余疫苗数量页面、预约页面、查询某注射点本周内打第二针的人数页面、查询是否爽约页面、已打疫苗登记页面、退出页面共10个页面。

1.系统选择页面

欢迎使用疫苗预约管理系统
1.使用帮助
2.进入系统
3.退出系统
预防接种,远离疾病。

2.主函数菜单页面(主控界面)

欢迎使用疫苗预约管理系统
菜单选择
0.疫苗预约管理系统使用说明(帮助)          1. 输入各注射点某天的总疫苗数量
2.查询剩余疫苗数量                          3. 个人预约                        
4. 查询个人预约信息                         5. 取消个人预约
6. 查询某注射点本周内打第二针的人数         7. 爽约记录
8. 已打疫苗登记                             9. 退出系统
新冠疫苗尽早打,防患未然靠大家

3.帮助页面

3.1使用帮助
欢迎使用疫苗预约管理系统
欢迎使用疫苗预约管理系统帮助!
初次进入系统,如果你是工作人员 建议您根据菜单的内容 输入相对应的数字(1.2.3)
如果你是  用户   建议您根据菜单的内容 输入相对应的数字(1.2.3)
菜单内容:
1.使用帮助
2.进入系统
3.退出系统
感谢您对于疫苗预约管理系统的使用!

3.2疫苗预约管理系统使用说明(帮助)
欢迎使用疫苗预约管理系统
欢迎使用疫苗预约管理系统帮助!
初次进入系统,如果你是工作人员建议您先选择1(来输入各注射点某天的总疫苗数量)
如果你是  用户  建议您根据菜单的内容 输入相对应的数字
感谢您对于疫苗预约管理系统的使用!

4.输入疫苗信息页面

欢迎使用疫苗预约管理系统
----------输入各注射点某天的总疫苗数量----------
请选择你的身份:
1.  工作人员
2.  用户

输入疫苗信息之工作人员

欢迎使用疫苗预约管理系统
----------输入各注射点某天的总疫苗数量----------
您需要输入的是:
各注射点 时间 以及注射点的总疫苗数

5.查询剩余疫苗数量页面

欢迎使用疫苗预约管理系统
----------欢迎进入查询剩余疫苗数量页面----------
请选择您要进行的操作:
1.  查询 某注射点 某天 的剩余疫苗数量  
2.  查询 某天所有注射点 的剩余疫苗数量
3.  查询 所有注射点 的剩余疫苗数量

6.预约页面

欢迎使用疫苗预约管理系统
----------欢迎进入个人预约页面----------
1.  个人预约
2.  查询个人预约信息
3.  取消个人预约

7.查询某注射点本周内打第二针的人数页面

欢迎使用疫苗预约管理系统
----------欢迎进入查询某注射点本周内打第二针的人数页面----------
您需要输入的是:
注射点名字

8.查询是否爽约页面

欢迎使用疫苗预约管理系统
----------欢迎进入爽约记录页面----------
您需要输入的是:
姓名 身份证 单位

9.已打疫苗登记页面

欢迎使用疫苗预约管理系统
----------欢迎已打疫苗登记页面----------
您需要输入的是:
    姓名 身份证 单位 已打次数

10.退出页面

欢迎使用疫苗预约管理系统
确定退出系统吗?
确定请输入“yes”退出程序        输入“no”返回菜单
注意:请输入正确的字符,谢谢!
请选择(yes  or  no):

(二)总体设计

疫苗预约管理包含了以下模块:

  1. 系统选择模块。进入疫苗预约管理系统以后,会出现3个选项,1是使用帮助,2是进入系统,3是退出系统。供用户选择。
  2. 主函数菜单模块(主控模块)。可通过菜单选择要操作的功能,一共有10大功能可以供用户选择。用户可以根据自己想要进行的功能进入相应的模块。
  3. 帮助模块。输出该疫苗预约管理系统的使用说明,让用户更好更快的能使用疫苗预约管理系统。
  4. 输入疫苗信息模块。这里是工作人员进行对于疫苗信息的输入(包括注射点,日期和该注射点的疫苗数量),用户是不能进入的地方,用户进入的话会有提示。
  5. 查询剩余疫苗数量模块。该模块里面还有3个功能供用户选择。【包括(1).查询某注射点某天的剩余疫苗数量。输出某注射点某天的剩余疫苗数量(2).查询某天所有注射点的剩余疫苗数量(按数量从高到低排序)。输出某天所有注射点的剩余疫苗数量。(3).查询所有注射点的剩余疫苗数量。输出所有注射点的剩余疫苗数量】根据用户选择的不同,进入不同功能,输出不一样的东西。比如:用户输入注射点和日期,系统会查询是否有该注射点,如果有会输出注射点该天的剩余疫苗数量。如果用户输入日期,这系统会输出所有注射点在这一天的疫苗剩余量。当然用户也可以直接选着功能3,系统会输出所有注射点的剩余疫苗数量。
  6. 预约模块。用户输入个人信息和要预约的注射点以及日期,如果该注射点当日有疫苗,则预约成功,反之则预约失败。
  7. 查询某注射点本周内打第二针的人数模块。输入注射点的名字,系统会通过查询输出注射点本周内打第二针的人数。
  8. 查询是否爽约模块。用户输入个人信息,系统会通过查询输出您是否有爽约记录。
  9. 已打疫苗登记模块。用户输入个人信息去记录已打疫苗。
  10. 退出模块。用户输入yes退出疫苗预约管理系统,输出no返回系统。

四、 实现过程

回到设计思路

(一)系统选择模块的实现

       系统选择模块提供功能菜单,供用户选择功能,会出现3个选项,1是使用帮助,2是进入系统,3是退出系统。供用户选择。

(二)主函数菜单模块(主控模块)的实现

       主函数菜单模块(主控模块)一共有10大功能可以供用户选择。用户可以根据自己想要进行的功能进入相应的模块。它的核心如下:

(三)帮助模块的实现

       帮助模块提供用户如何正确使用疫苗预约管理系统,让用户更好更快的能使用疫苗预约管理系统。

(四)输入疫苗信息模块的实现

       输入疫苗信息模块提供的是工作人员进行对于疫苗信息的输入(包括注射点,日期和该注射点的疫苗数量),用户是不能进入的地方,用户进入的话会有提示。

       部分代码如下:

#include"Injection.h"
#include <bits/stdc++.h>
#include<conio.h>
using namespace std;
extern int ncp_number;
InjectionPoint a[110];
//输入各注射点某天的总疫苗数量(键盘输入或从文件中读取)
char  InPutVaccineNumber[10000]=
"           _______________________________________________________________________________________     \n"
"           |                                                                                     |     \n"
"           |                              欢迎使用疫苗预约管理系统                               |     \n"
"           |_____________________________________________________________________________________|     \n" 
"           |                                                                                     |     \n"
"           |                  ----------输入各注射点某天的总疫苗数量----------                   |     \n" 
"           |                                                                                     |     \n"
"           |    请选择你的身份:                                                                 |     \n"
"           |        1.工作人员                                                                   |     \n"
"           |        2.用户                                                                       |     \n"
"           |                                                                                     |     \n"
"           |_____________________________________________________________________________________|     \n" 
"\n"
;
//各注射点某天的总疫苗数量 
char worker[10000]=
"           _______________________________________________________________________________________     \n"
"           |                                                                                     |     \n"
"           |                              欢迎使用疫苗预约管理系统                               |     \n"
"           |_____________________________________________________________________________________|     \n" 
"           |                                                                                     |     \n"
"           |                  ----------输入各注射点某天的总疫苗数量----------                   |     \n" 
"           |                                                                                     |     \n"
"           |    您需要输入的是:                                                                 |     \n"
"           |        各注射点 时间 以及注射点的总疫苗数                                           |     \n"
"           |                                                                                     |     \n"
"           |                                                                                     |     \n"
"           |_____________________________________________________________________________________|     \n" 
"\n"      
;
void PutVaccineNumber()//1. 输入各注射点某天的总疫苗数量
{
  system("cls");
  //  输出当前日期和时间
  cout<<"当前时间为:"<<endl;
  system("date /T");
  system("TIME /T");
  cout<<InPutVaccineNumber<<endl;
  int x=0;
  cout<<"           你的选择是:";cin>>x;
  if(x==1){//1.工作人员
    system("cls");
    //  输出当前日期和时间
    cout<<"当前时间为:"<<endl;
    system("date /T");
    system("TIME /T");
    cout<<worker<<endl;
    cout<<"           请输入注射点个数:";
    int n;cin>>n; 
      for(int i=1;i<=n;i++){
        ncp_number++;
        cout<<"           请输入第"<<i<<"个疫苗注射点的名称"<<endl<<"           ";
        cin>>a[ncp_number].ncp_name; 
        cout<<"               请输入日期(用数字表示)以及该注射点的总疫苗数"<<endl<<"               ";
        cin>>a[ncp_number].ncp_day>>a[ncp_number].ncp_VaccineNumber;
        cout<<endl;
      a[ncp_number].ncp_maxyyNumber=a[ncp_number].ncp_VaccineNumber;    
    }
    cout<<"           输入成功!!!"<<endl;
    cout<<endl<<"           按Esc键回退到主菜单。\n";  
  }
  if(x==2){//2.用户
    cout<<"           对不起 此功能只对工作人员可用!!!!!"<<endl;
    cout<<endl<<"           按Esc键回退到主菜单。\n"; 
  }
  while (1)
    {
        int key = _getch();
        if (key == 27) break;   //27是Esc键的编码 
    }
}

输入疫苗信息模块的运行截图

(五)查询剩余疫苗数量模块的实现

   查询剩余疫苗数量模块包含以下功能:

  1. 查询某注射点某天的剩余疫苗数量。查询某注射点某天的剩余疫苗数量的功能是:输出某注射点某天的剩余疫苗数量。
  2. 查询某天所有注射点的剩余疫苗数量(按数量从高到低排序)。查询某天所有注射点的剩余疫苗数量的功能是:输出某天所有注射点的剩余疫苗数量。
  3. 查询所有注射点的剩余疫苗数量。查询所有注射点的剩余疫苗数量的功能是:输出所有注射点的剩余疫苗数量。

代码如下:

#include <bits/stdc++.h>
#include<conio.h>
#include"Injection.h"
using namespace std;
//2.某注射点某天的剩余疫苗数量                3. 查询某天所有注射点的剩余疫苗数量
extern InjectionPoint a[110];
extern int ncp_number;
char remaining[100000]=
"           _______________________________________________________________________________________     \n"
"           |                                                                                     |     \n"
"           |                              欢迎使用疫苗预约管理系统                               |     \n"
"           |_____________________________________________________________________________________|     \n" 
"           |                                                                                     |     \n"
"           |                  ----------欢迎进入查询剩余疫苗数量页面----------                   |     \n"
"           |                                                                                     |     \n"
"           |    请选择您要进行的操作:                                                           |     \n"
"           |        1.查询 某注射点 某天 的剩余疫苗数量                                          |     \n"
"           |                                                                                     |     \n"
"           |        2.查询 某天所有注射点 的剩余疫苗数量                                         |     \n"
"           |                                                                                     |     \n"
"           |        3.查询 所有注射点 的剩余疫苗数量                                             |     \n"
"           |                                                                                     |     \n"
"           |_____________________________________________________________________________________|     \n" 
"                                                                                                       \n"
"           \n"
;
void  VaccineRemainingNumber()//2.Number of vaccine remaining剩余疫苗数量
{
  system("cls");
  //  输出当前日期和时间
  cout<<"当前时间为:"<<endl;
  system("date /T");
  system("TIME /T");
  cout<<remaining<<endl;
  
  int choice=0;
  cout<<"           请输出您的选择:" ; 
  cin>>choice;
  if(choice==1)//1.查询某 注射点 某天的剩余疫苗数量
  {
    cout<<"           请输入您要查询的 注射点 以及 日期(用数字表示)"<<endl;
    string didian;
    int day;
    cout<<"           ";
    cin>>didian >>day; 
    while(day < 1 || day > 7){
          cout<<"           输入日期错误,只能输入一周内日期"<<endl<<"           请重新输入日期:";
          cin>>day;
      } 
//完成     问题                      //cout<< ncp_number;这个可以 
    int i,yes=0;
    for(i=1;i<=ncp_number;i++)
    {
      if(didian==a[i].ncp_name && day==a[i].ncp_day)
      {
        printf("           注射点 \t 日期\t 剩余疫苗数量\n"); 
        printf("           %s \t\t",a[i].ncp_name);
        printf(" %d \t",a[i].ncp_day);
        printf(" %d \t\n",a[i].ncp_VaccineNumber-a[i].ncp_countyypeople); 
        yes=1;  
      }
      else if(didian==a[i].ncp_name && day!=a[i].ncp_day)
      {
        cout<<endl<<"           暂无注射点"<<didian<<"在"<<day<<"号的信息"<<endl<<endl<<"           下面为该注射点的疫苗信息:"<<endl; 
        printf("           注射点 \t 日期\t 剩余疫苗数量\n"); 
        printf("           %s \t\t",a[i].ncp_name);
        printf(" %d \t",a[i].ncp_day);
        printf(" %d \t\n",a[i].ncp_VaccineNumber-a[i].ncp_countyypeople); 
        yes=1;
      }
    }
    if(yes==0)
    {
      cout<<"           暂无注射点信息!"<<endl; 
    } 
  }
  if(choice==2)//2.查询某天所有注射点的剩余疫苗数量(按数量从高到低排序) 
  {
    cout<<"           请输入您要查询的 日期(用数字表示)"<<endl<<"           ";
    int day;
    cin>>day;
    while(day < 1 || day > 7){
          cout<<"           输入日期错误,只能输入一周内日期"<<endl<<"           请重新输入日期:";
          cin>>day;
      } 
    int i,yes=0;
    int jilu[10000],count=0; 
    char name[10000];
    for(i=1;i<=ncp_number;i++)
    {
      if(day==a[i].ncp_day)
      {
        jilu[i]=a[i].ncp_VaccineNumber-a[i].ncp_countyypeople;//剩余疫苗数量
        count++;
//        strcpy (name[count],a[i].ncp_name);//注射点
        
        printf("           注射点 \t 日期\t 剩余疫苗数量\n"); 
        printf("           %s \t\t",a[i].ncp_name);
        printf(" %d \t",a[i].ncp_day);
        printf(" %d \t\n",a[i].ncp_VaccineNumber-a[i].ncp_countyypeople); 
        yes=1;  
      }
    }
    int x=1;
    int min=jilu[x];
    for(int j=2;j<=count;j++)
    {
      if(jilu[x]>jilu[j])
      {
        int num=jilu[x];
        jilu[x]=jilu[j];
        jilu[j]=num;
      }
    }
    printf("\n           日期\t 剩余疫苗数量(高到低)\n"); 
    for(int j=1;j<=count;j++)
    {
    
      printf("           %d\t %d\n",day,jilu[j]);         
    }
    if(yes==0)
    {
      cout<<"           暂无注射点信息!"<<endl; 
    } 
  }
  if(choice==3)//3.查询所有注射点的剩余疫苗数量
  {
    int yes=0; 
    for(int i=1;i<=ncp_number;i++)
    {
      printf("\n           注射点 \t 日期\t 剩余疫苗数量\n"); 
      printf("           %s \t\t",a[i].ncp_name);
      printf(" %d \t",a[i].ncp_day);
      printf(" %d \t\n",a[i].ncp_VaccineNumber-a[i].ncp_countyypeople);
      yes=1;
//      cout<<a[i].ncp_name<<" "<<a[i].ncp_day<<" "<<a[i].ncp_VaccineNumber-a[i].ncp_countyypeople<<endl; 
    }
    if(yes==0)
    {
      cout<<"           暂无注射点信息!"<<endl; 
    }   
  
  }
  cout<<endl<<"           按Esc键回退到主菜单。";  
  while (1){
        int key = _getch();
        if (key == 27) break;   //27是Esc键的编码 
    }
}

查询剩余疫苗数量模块运行截图

(六)预约模块的实现

   预约模块包含以下功能:

  1. 用户进行预约。预约功能:当用户输入个人信息和要预约的注射点以及日期,如果该注射点当日有疫苗,则预约成功,反之则预约失败。
  2. 用户查询预约信息。查询预约信息功能:当用户输入个人信息,系统输出用户的预约信息。
  3. 用户取消预约。取消预约:当用户输入个人信息,如果有预约则取消预约。

代码如下:

#include"Injection.h"
#include<bits/stdc++.h>
#include<conio.h>
using namespace std;
extern InjectionPoint a[110];
extern int ncp_number;
people p1[1005];
int Pnumber=0;
//预约菜单 
char vaccine[10000]=
"           _______________________________________________________________________________________     \n"
"           |                                                                                     |     \n"
"           |                              欢迎使用疫苗预约管理系统                               |     \n"
"           |_____________________________________________________________________________________|     \n" 
"           |                                                                                     |     \n"
"           |                      ----------欢迎进入个人预约页面----------                       |     \n"
"           |                                                                                     |     \n"
"           |       1.个人预约                                                                    |     \n" 
"           |                                                                                     |     \n"
"           |       2.查询个人预约信息                                                            |     \n"
"           |                                                                                     |     \n"
"           |       3.取消个人预约                                                                |     \n"
"           |                                                                                     |     \n"
"           |_____________________________________________________________________________________|     \n" 
"                                                                                                       \n"
//"           按Esc键回退到主菜单。\n"
; 
  
//struct people{
//  char name[10000],id[10000],unit[10000];     //姓名,身份证号,单位 
//  int num=0,order;                    //已经注射过的针数,预约成功号
//};
void VaccineAppointment()//345疫苗预约 目录 3个人预约(某天某注射点)4. 查询个人预约信息     5. 取消个人预约
{
  system("cls");
  //  输出当前日期和时间
  cout<<"当前时间为:"<<endl;
  system("date /T");
  system("TIME /T");
  cout<<vaccine<<endl;
  
    //
  int choice=0;
  cout<<"           请输出您的选择:" ; 
  cin>>choice;
  string name,id,unit;
  if(choice==1)//1.个人预约(某天某注射点)
  {
    cout<<endl<<"           欢迎进入个人预约环节"<<endl<<"           请输入您的姓名 身份证号 单位:"<<endl<<"           ";//18位 
    Pnumber++;//预约人数序号 
    
    cin>> p1[Pnumber].name>>p1[Pnumber].id>>p1[Pnumber].unit;
    cout<<endl<<"           请输入您要预约的注射点以及日期:"<<endl<<"           ";
    int day=0,yes=0;
    string didian; 
    cin>>didian>>day;
    
    for(int i=1;i<=ncp_number;i++)
    {
      if(didian==a[i].ncp_name && day==a[i].ncp_day)
      {
        if(a[i].ncp_countyypeople<a[i].ncp_maxyyNumber)
        {
          a[i].ncp_countyypeople++;
          p1[Pnumber].order=a[i].ncp_countyypeople;
          strcpy (p1[Pnumber].place , a[i].ncp_name);//p1[Pnumber].place=a[i].ncp_name;//注意数组不能赋值给数组 
          p1[Pnumber].time = day;
          yes=1;
          cout<<"           预约成功!"<<endl;
        }
//        break;
      }
    }
    if(yes==0)
    {
      cout<<endl<<"           暂无注射点信息或者预约人数已满!   预约失败!"<<endl; 
    }
     
  }
  //
  if(choice==2)//2.查询个人预约信息
  {
    cout<<endl<<"           欢迎进入查询个人预约信息环节"<<endl<<"           请输入您的姓名 身份证号 单位:"<<endl<<"           ";
    cin>>name>>id>>unit; //p1[Pnumber].name>>p1[Pnumber].id>>p1[Pnumber].unit;
    int yes=0;
    for(int i=1;i<=Pnumber;i++)
    {
      if(name==p1[i].name && id==p1[i].id)
      {
        cout<<endl<<"           "<<name<<"的预约信息为:"<<endl;
        printf("           注射点 \t 日期\t 已注射过针数\t 预约成功号\n"); 
        printf("           %s \t\t",p1[i].place);
        printf(" %d \t",p1[i].time);
        printf(" %d \t\t",p1[i].num);
        printf(" %d \t",p1[i].order);
        yes=1;
        break;
      }
    }
    if(yes==0)
    {
      cout<<endl<<"           暂无您的预约信息!   请确认您是否有预约!"<<endl; 
    }
  }
  if(choice==3)//3.取消个人预约    
  {
    cout<<endl<<"           欢迎进入取消个人预约环节"<<endl<<"           请输入您的姓名 身份证号 单位:"<<endl<<"           ";//18位 
//    Pnumber++;//预约人数序号 
    cin>> name>>id>>unit;
    int yes=0;
    for(int i=1;i<=Pnumber;i++)
    {
      if(name==p1[i].name && id==p1[i].id)
      {
        cout<<endl<<"           "<<name<<"取消的预约信息为:"<<endl;
        printf("           注射点 \t 日期\t 已注射过针数\t 预约成功号\n"); 
        printf("           %s \t\t",p1[i].place);
        printf(" %d \t",p1[i].time);
        printf(" %d \t\t",p1[i].num);
        printf(" %d \t",p1[i].order);
        
        for(int j=1;j<=ncp_number;j++)
        {
          if(name==a[j].ncp_name)
          {
            p1[i].order--;
            a[j].ncp_countyypeople=p1[i].order;//ncp_countyypeople--;       //已预约人数
          }
        }
        
        cout<<endl<<"           取消预约成功!"<<endl; 
        yes=1;
        break;
      }
    }
    if(yes==0)
    {
      cout<<endl<<"           暂无您的预约信息!   请确认您是否有预约!"<<endl; 
    }
  }
  cout<<endl<<"           按Esc键回退到主菜单。";  
  while (1)
    {
        int key = _getch();
        if (key == 27) break;   //27是Esc键的编码 
    }
 }

预约与查询预约信息运行截图

疫苗预约管理系统疫苗数量减少运行截图

取消预约运行截图

(七)查询某注射点本周内打第二针的人数模块的实现

       查询某注射点本周内打第二针的人数模块的功能是:当输入注射点的名字,系统会通过查询输出注射点本周内打第二针的人数。

查询某注射点本周内打第二针的人数运行截图

(八)查询是否爽约模块的实现

       查询是否爽约模块提供用户输入个人信息,系统会通过查询输出您是否有爽约记录。

查询是否爽约运行截图

(九)已打疫苗登记模块的实现

       已打疫苗登记模块提供用户输入个人信息去记录已打疫苗。

已打疫苗登记运行截图

(十)退出模块的实现

       退出模块提供用户选着是否退出疫苗预约管理系统。用户输入yes退出疫苗预约管理系统,输出no返回系统。

退出系统运行截图

五、 结论与改进

   经过以上各个功能的编写,已经基本完成了疫苗预约管理系统的开发。疫苗预约管理系统是一个实用性非常强的系统,因为我们现在正面临着新冠疫情,如果采用人工疫苗预约的方法,不仅效率低,易出错,手续繁琐,而且耗费大量人力,而疫苗预约管理系统就很好地解决了这方面的缺点。该系统能够让医护人员对疫苗接种点和疫苗数量的信息进行了解,还有对于预约了要接种疫苗的人员等进行高效的管理,同时让人们能够更加方便的查询疫苗接种地点的疫苗剩余数量,和对于疫苗接种预约,查询或者取消等功能的使用,在用户的具备一定的计算机操作能力的前提下,便可以使用该疫苗预约管理系统以提高疫苗使用的管理效率。


   这个疫苗预约管理系统不仅能灵活地去使用系统里面的各项功能,还能在各个文件之间进行联系。在主函数的界面设置的尽量简单,当用户不会使用时还有帮助可选,让使用者容易理解和使用该疫苗预约管理系统。


   我们应该知道对代码的变量命名不能随便用a,b,c,应该按照规范来写,比如代表什么意思就命名为什么。所以,这告诉我们养成一个良好的编写习惯十分的重要,这不但有助我们对编写的代码的纠错,也有助于我们将来在找工作的时候与伙伴们在完成大程序时候能更好的合作。


   同时,我们在写代码的时候应该多想想,不要老是只往一方面向,要懂得灵活变通,发散思维,去想想还有没有别的方法也能解决这个问题。同时在我们编写代码出现问题又找不到问题所在的时候,我们也不要忘记去进行debug进行调试找出问题所在,把bug修复好。


程序设计基础课程设计 —— 疫苗预约管理系统附录


回到顶部



相关文章
|
6月前
|
Java 关系型数据库 MySQL
学生公寓报修管理系统的设计与实现(论文+源码)_kaic
学生公寓报修管理系统的设计与实现(论文+源码)_kaic
|
项目管理 数据库 开发工具
0024Java程序设计-毕业论文管理系统的设计与实现
0024Java程序设计-毕业论文管理系统的设计与实现
50 0
|
6月前
|
Java 关系型数据库 MySQL
高校宿舍报修管理系统的设计与实现(论文+源码)_kaic
高校宿舍报修管理系统的设计与实现(论文+源码)_kaic
程序设计基础课程设计 —— 疫苗预约管理系统附录
程序设计基础课程设计 —— 疫苗预约管理系统附录
心理健康管理系统 【毕业设计系统】
这篇文章介绍了一个心理健康管理系统的毕业设计项目,展示了系统的功能分布、登录注册界面以及不同用户角色的后台管理界面,并提供了技术栈和效果截图。
心理健康管理系统 【毕业设计系统】
|
6月前
|
开发框架 前端开发 Java
毕业设计选题:养老院服务系统的设计与实现
毕业设计选题:养老院服务系统的设计与实现
154 0
|
6月前
|
编解码 测试技术 数据库
图书馆管理系统系统分析与设计(上)
图书馆管理系统系统分析与设计(上)
|
6月前
|
SQL 前端开发 Java
五邑大学餐厅网络点餐系统设计与实现(包含完整源码详细开发过程)
五邑大学餐厅网络点餐系统设计与实现(包含完整源码详细开发过程)
|
SQL 数据管理 Java
C#宿舍管理系统(C#课程设计含源码)
C#宿舍管理系统(C#课程设计含源码)
156 0
C#宿舍管理系统(C#课程设计含源码)
|
6月前
|
存储 文件存储 C语言
《C语言程序设计》课程设计 -- 火车票票务管理系统
《C语言程序设计》课程设计 -- 火车票票务管理系统
133 1