C语言数据结构医院排队就诊系统——使用链队列完成(娱乐)

    技术2024-04-16  91

    #include<stdio.h> #include<stdlib.h> #include<windows.h> typedef struct list { int data; char data1[10]; struct list *next; }lnode,*linklist; typedef struct temp { linklist front; linklist rear; }queue; enqueue(queue *q) { linklist p=(linklist)malloc(sizeof(lnode)); printf("输入病例号和名字\n"); scanf("%d",&p->data); scanf("%s",&p->data1); p->next=NULL; q->rear->next=p; q->rear=p; } jiuzhen(queue *q) { linklist p=q->front->next; printf("这是排队就诊的病人:->"); printf("%d ",p->data); printf("%s ",p->data1); q->front->next=p->next; free(p); } yanshi(char *p) { while(1) { if(*p!=0) { printf("%c",*p++); } else { break; } Sleep(100); } } void jiuzhen1(queue *q) { linklist p=q->front->next; printf("按照这个依次就诊:\n"); while(p) { printf("%d ",p->data); printf("%s ",p->data1); q->front->next=p->next; free(p); p=q->front->next; printf("\n"); } } chakan(queue *q) { linklist p=q->front->next; printf("按照这个依次就诊:\n"); while(p) { printf("%d ",p->data); printf("%s ",p->data1); q->front->next=p->next; //free(p); p=q->front->next; printf("\n"); } } int main() { system("color 0b"); yanshi("\3\3\3\3\3\3\3欢迎使用医院排队系统\3\3\3\3\3\3\3\3"); printf("\n"); printf(" 1.进入排队\n"); printf(" 2.首先排队就诊病人\n"); printf(" 3.按次序就诊\n"); printf(" 4.今天结束,退出系统\n"); printf(" 5.查看排队情况\n"); queue *q=(queue*)malloc(sizeof(queue)); q->front=q->rear=(linklist)malloc(sizeof(lnode)); // q->front=q->rear=NULL; q->front->next=NULL; int x; scanf("%d",&x); while(x!=-1) { switch(x) { case 1: enqueue(q); break; case 2: jiuzhen(q); break; case 3: jiuzhen1(q); break; case 4: printf("医院医生下班,明日再来,欢迎使用\n"); break; case 5: chakan(q); break; } printf("选择下一步进行的操作: \n"); scanf("%d",&x); } }
    Processed: 0.012, SQL: 12