c语言程序设计医院排队功能,C语言-医院挂号排队系统.doc

C语言-医院挂号排队系统

C语言-医院挂号排队系统

#include

#include

#include

#include //密码以不回显方式输入函数(getch();)的头文件

#include

#define TRUE 1 /*本程序碰到的最大的问题是getchar();及scanf();等输入函数入栈、出栈的问题,例如使用的是getchar()函数,

当使用者一次性输入过多字符时候,而程序本身就会递归的压栈和出栈问题。getchar每次只能选择一个字符,

其他多余的字符就会留给下一个输入函数getchar或scanf处理。就会造成程序的逻辑错误。*/

#define FALSE 0

#define NULL 0

#define Num 2000 //排队号码将以2000后开始

#define M 50

static int lists=1; //普通挂号的人员

static int treat=1; //急诊挂号的人员

static int aa=1; //没有去用指针,而是采用aa,bb来纪录挂号者的号码

static int bb=1;

static int success; //账户密码是否成功登陆

typedef struct Node //链队的定义

{

int data;

struct Node *next;

}QueueP;

typedef struct

{

QueueP *front;

QueueP *rear;

}LinkQueue;

int Patient(LinkQueue *q) //病人挂号排队程序

{

//这一段花了很长时间,刚开始以为指针q需要在外面定义。因为怕在里面声明程序循环会使指针重复指向。

QueueP *p; //然而在主函数中定义后,程序提示很多没有声明,才知道这个p开辟的空间指向后不会再重复指向。

//LinkQueue *q;

p=(QueueP *)malloc(sizeof(QueueP));

//q=(LinkQueue *)malloc(sizeof(LinkQueue));

//q->front=(QueueP *)malloc(sizeof(QueueP));

//q->rear=q->front;

p->data=lists++;

p->next=NULL;

q->rear->next=p;

q->rear=p;

printf(" +----------挂号成功,您的排队号码为:---------+\n\n %d\n\n",Num+p->data);

printf(" +-------------您当前的位置为:%2d-------------+\n",lists+treat-2);

struct tm *ptime; /*百度得来的,头文件为time.h

tm是一个已声明的函数,里面有tm_sec,tm_min,tm_hour,tm_mday等...

*/

time_t t;

t=time(NULL);

ptime=localtime(&t);

printf(" +--------------现在时间是: %d:%d------------+\n",ptime->tm_hour,ptime->tm_min);

printf(" +---------友情提示:当有急诊病人挂号时候-----+\n");

printf(" +----------此系统将以急诊病人的挂号优先------+\n");

printf("

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值