排隊看病模擬

2021-07-07 02:14:20 字數 1984 閱讀 6893

問題描述:編寫乙個程式,反映病人到醫院看病,排隊看醫生的情況。在病人排隊過程中,主要重複兩件事:  

(1)病人到達診室,將病歷本交給**,排到等待佇列中候診。

(2)**從等待佇列中取出下一位病人的病歷,該病人進入診室就診。

要求模擬病人等待就診這一過程。程式採用選單方式,其選項及功能說明如下:

(1)排隊——輸入排隊病人的病歷號,加入到病人排隊佇列中。

(2)就診——病人排隊佇列中最前面的病人就診,並將其從佇列中刪除。

(3)檢視排隊——從隊首到隊尾列出所有的排隊病人的病歷號。

(4)不再排隊,餘下順序就診——從隊首到隊尾列出所有的排隊病人的病歷號,並退出執行。

(5)下班——退出執行,提示未就診的病人明天再來。

輸入描述:若干資料。

程式輸出:患者的相應動作。

#include #include typedef struct qnode  

qnode; /*鏈隊結點型別*/

typedef struct

qutype; /*鏈隊型別*/

void seedoctor()

if (find)

printf(" >>輸入的病歷號重複,重新輸入:");

} while (find==1);

p=(qnode *)malloc(sizeof(qnode)); /*建立結點*/

p->data=no;

p->next=null;

if (qu->rear==null) /*第乙個病人排隊*/

else

break;

case 2:

if (qu->front==null) /*隊空*/

printf(" >>沒有排隊的病人!\n");

else /*隊不空*/

else

qu->front=p->next;

free(p);

} break;

case 3:

if (qu->front==null) /*隊空*/

printf(" >>沒有排列的病人!\n");

else /*隊不空*/

printf("\n");

} break;

case 4:

if (qu->front==null) /*隊空*/

printf(" >>沒有排列的病人!\n");

else /*隊不空*/

printf("\n");

} flag=0; /*退出*/

break;

case 5:

if (qu->front!=null) /*隊不空*/

printf(" >>請排隊的病人明天就醫!\n");

flag=0; /*退出*/

break;

} }

p=qu->front; //銷毀佇列

佇列的應用。

佇列在實際中的作用也非常的大,所以認真積累每種資料結構,在將來的工作中會有很大的作用。

排隊看病模擬

include include typedef struct qnode qnode 鏈隊結點型別 typedef struct qutype 鏈隊型別 void seedoctor if find printf 輸入的病歷號重複,重新輸入 while find 1 p qnode malloc s...

第七周 模擬排隊看病

include include typedef struct qnode qnode 鏈隊結點型別 typedef struct qutype 鏈隊型別 void seedoctor if find printf 輸入的病歷號重複,重新輸入 while find 1 p qnode malloc s...

專案5 排隊看病模擬

檔名稱 main.完成日期 2015年10月16日 版本號 vc 6.0 問題描述 編寫乙個程式,反映病人到醫院看病,排隊看醫生的情況。在病人排隊過程中,主要重複兩件事 1 病人到達診室,將病歷本交給 排到等待佇列中候診。2 從等待佇列中取出下一位病人的病歷,該病人進入診室就診。要求模擬病人等待就診...