![《C語(yǔ)言程序設(shè)計(jì)》藥房管理系統(tǒng)_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/19/25c29c3f-7c6d-46ae-a714-b1b5834223cf/25c29c3f-7c6d-46ae-a714-b1b5834223cf1.gif)
![《C語(yǔ)言程序設(shè)計(jì)》藥房管理系統(tǒng)_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/19/25c29c3f-7c6d-46ae-a714-b1b5834223cf/25c29c3f-7c6d-46ae-a714-b1b5834223cf2.gif)
![《C語(yǔ)言程序設(shè)計(jì)》藥房管理系統(tǒng)_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/19/25c29c3f-7c6d-46ae-a714-b1b5834223cf/25c29c3f-7c6d-46ae-a714-b1b5834223cf3.gif)
![《C語(yǔ)言程序設(shè)計(jì)》藥房管理系統(tǒng)_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/19/25c29c3f-7c6d-46ae-a714-b1b5834223cf/25c29c3f-7c6d-46ae-a714-b1b5834223cf4.gif)
![《C語(yǔ)言程序設(shè)計(jì)》藥房管理系統(tǒng)_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/19/25c29c3f-7c6d-46ae-a714-b1b5834223cf/25c29c3f-7c6d-46ae-a714-b1b5834223cf5.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、課程設(shè)計(jì)報(bào)告 (201 201 學(xué)年 第 學(xué)期)課 程: 高級(jí)語(yǔ)言程序設(shè)計(jì) 題 目: 藥房管理系統(tǒng) 姓 名: 專(zhuān) 業(yè): 班 級(jí): 學(xué) 號(hào): 指導(dǎo)教師: 完成時(shí)間: 一、課程設(shè)計(jì)的內(nèi)容(課程設(shè)計(jì)題目,正式報(bào)告需將括號(hào)內(nèi)文字刪除)藥房管理系統(tǒng)功能:設(shè)計(jì)藥房管理系統(tǒng),輸入藥品基本信息(藥品編號(hào)、名稱(chēng)、單價(jià)、庫(kù)存數(shù)量、品牌),并實(shí)現(xiàn)以下功能:1、修改、刪除指定藥品的信息2、按單價(jià)或庫(kù)存數(shù)量排序并顯示藥品信息3、統(tǒng)計(jì)指定品牌藥品數(shù)量分步實(shí)施: 1、初步完成總體設(shè)計(jì),搭好框架,確定人機(jī)對(duì)話的界面,確定函數(shù)個(gè)數(shù); 2、完成最低要求:實(shí)現(xiàn)藥品的添加、修改、刪除等功能; 3、進(jìn)一步要求:實(shí)現(xiàn)排序及統(tǒng)計(jì)功能。要求
2、:1、用C語(yǔ)言實(shí)現(xiàn)程序設(shè)計(jì);2、 系統(tǒng)的各個(gè)功能模塊要求用函數(shù)實(shí)現(xiàn); 3、界面友好(良好的人機(jī)交互),程序加必要的注釋。2、 功能描述(對(duì)系統(tǒng)要實(shí)現(xiàn)的功能進(jìn)行描述,正式報(bào)告需將括號(hào)內(nèi)文字刪除)1、能正確地錄入藥品信息并保存下來(lái)。2、能夠有效、快速地查看全部藥品的信息。3、可以查看某一藥品的信息(按藥品的默認(rèn)序號(hào)查看)4、可以查看某一藥品的信息(按藥品的編號(hào)進(jìn)行查看)5、能夠按照管理人員的意愿修改任意藥品的信息6、能修改藥品信息7、此系統(tǒng)還能對(duì)藥品的單價(jià)進(jìn)行排序三、概要設(shè)計(jì)(根據(jù)功能描述建立系統(tǒng)的體系結(jié)構(gòu),即將整個(gè)系統(tǒng)分解成若干子功能模塊,并用框圖表示各功能模塊之間的銜接關(guān)系,并簡(jiǎn)要說(shuō)明各模塊的
3、功能,正式報(bào)告需將括號(hào)內(nèi)文字刪除)主界面輸入藥品信息修改藥品信息刪除藥品信息保存退出統(tǒng)計(jì)藥品數(shù)量藥品排序藥品編號(hào)庫(kù)存數(shù)量單價(jià)名稱(chēng)品牌修改名稱(chēng)單價(jià)庫(kù)存數(shù)量全部刪除刪除單個(gè)庫(kù)存數(shù)量排序單價(jià)排序輸入藥品信息主界面添加藥品輸入名稱(chēng)輸入品牌輸入數(shù)量輸入單價(jià)輸入編號(hào)是否繼續(xù)是否刪除藥品主界面全部刪除單個(gè)刪除確認(rèn)取消按名稱(chēng)刪除確認(rèn)是否刪除是否刪除成功四、詳細(xì)設(shè)計(jì)(詳細(xì)說(shuō)明各功能模塊的實(shí)現(xiàn)過(guò)程,包括用流程圖對(duì)算法進(jìn)行描述、所用到的數(shù)據(jù)結(jié)構(gòu)、算法實(shí)現(xiàn)的主要源代碼等,正式報(bào)告需將括號(hào)內(nèi)文字刪除)#include<stdio.h>#include<stdlib.h>#include<s
4、tring.h>#include<conio.h>struct medicinechar name20; /藥品名稱(chēng)char number50; /藥品編號(hào)char price50; /單價(jià)char inventory50; /庫(kù)存數(shù)量char brand20; /品牌 medicine100; /假設(shè)最大數(shù)為100. /定義全局變量numint num; int menu_select() char s80; int a;/*定義整形變量*/ system("cls"); printf("tt-您好!您已進(jìn)入藥房管理系統(tǒng)-nn");
5、printf("ttt1. 輸入藥品信息n"); printf("ttt2. 查看藥品信息n"); printf("ttt3. 修改藥品信息n"); printf("ttt4. 按編號(hào)查找藥品n"); printf("ttt5. 按價(jià)格排序 n"); printf("ttt6. 刪除藥品信息n"); printf("ttt7. 退出n"); printf("tt-nn");doprintf("Enter you choice(
6、17):"); scanf("%s",s); a=atoi(s); while (a<1 | a>7); return a;int addmedicine() printf("ttt-請(qǐng)輸入您要保存的信息 -n"); printf("ttt輸入藥品名稱(chēng):n"); scanf("%s",); printf("ttt輸入藥品編號(hào):n"); scanf("%s",medicinenum.number); printf("
7、;ttt單價(jià):n"); scanf("%s",medicinenum.price); printf("ttt品牌:n"); scanf("%s",medicinenum.brand); printf("ttt庫(kù)存數(shù)量 :n"); scanf("%s",medicinenum.inventory); num+; printf("ttt是否繼續(xù)添加?(Y/N):n"); if(getch()='y' | getch()='Y') addm
8、edicine(); return(0);void modifybyname() /按藥品名稱(chēng)修改char c;int i,mark=0;char name20;printf("ntt請(qǐng)輸入要修改的藥品名稱(chēng):"); scanf("%s",name);if(num=0)printf("ntt文件中無(wú)相關(guān)藥品");printf("ntt按任意鍵返回主菜單");getch(); mark+;return; for(i=0;i<num;i+)if(strcmp(,name)=0) prin
9、tf("ntt以下是您要修改的藥品信息"); printf("ntt藥品名稱(chēng): %s",); printf("ntt藥品編號(hào): %s",medicinei.number); printf("ntt單價(jià): %s",medicinei.price); printf("ntt品牌: %s",medicinei.brand); printf("ntt庫(kù)存數(shù)量: %s",medicinei.inventory); printf("ntt是否修改(y
10、/n)"); if(getch()='y') printf("nt-請(qǐng)選擇修改信息-");printf("nt 1-修改藥品名稱(chēng) ");printf("nt 2-修改藥品編號(hào) ");printf("nt 3-修改單價(jià) "); printf("nt 4-修改品牌 ");printf("nt 5-修改庫(kù)存數(shù)量 ");printf("nt-");printf("nt請(qǐng)選擇您所要的服務(wù):"); scanf("
11、%s",&c);switch(c) case '1': printf("nt請(qǐng)輸入新藥品名稱(chēng): "); scanf("%s",);break; case'2':printf("nt請(qǐng)輸入新藥品編號(hào): %s"); scanf("%s",medicinei.number);break; case'3':printf("nt請(qǐng)輸入新單價(jià): "); scanf("%s",medicinei.
12、price);break; case'4':printf("nt請(qǐng)輸入新品牌: "); scanf("%s",medicinei.brand);break; case'5':printf("nt請(qǐng)輸入新庫(kù)存數(shù)量: "); scanf("%s",medicinei.inventory);break; if(mark=0)printf("ntt藥品信息修改完畢");printf("nt是否繼續(xù)修改?(Y/N):");if(getch()='
13、y')modifybyname();return; void list() int i; system("cls"); if(num!=0) printf("ttt-已為您顯示所有藥品信息-n"); for (i=0;i<num;i+) printf("ttt藥品名稱(chēng):%sn",);printf("ttt藥品編號(hào):%sn",medicinei.number);printf("ttt單價(jià):%sn",medicinei.price); printf(&quo
14、t;ntt品牌: %sn",medicinei.brand);printf("ttt庫(kù)存數(shù)量:%sn",medicinei.inventory); if(i+1<num) system("pause"); printf("ttt-n"); else printf("ttt系統(tǒng)中無(wú)任何記錄n"); printf("ttt按任意鍵返回主菜單:n"); getch(); return;int searchbyname() int mark=0; int i; printf("
15、ttt- 按藥品名稱(chēng)查找 -n"); char name20; printf("ttt請(qǐng)輸入藥品名稱(chēng):n"); scanf("%s",name); for(i=0;i<num;i+) if (strcmp(,name)=0) printf("ttt- 以下是您查找的藥品信息 -n");printf("ttt藥品名稱(chēng): %s",);printf("ttt藥品編號(hào): %s",medicinei.number);printf(&q
16、uot;ttt單價(jià): %s",medicinei.price); printf("ntt品牌: %s",medicinei.brand);printf("ttt庫(kù)存數(shù)量:%sn",medicinei.inventory);printf("ttt-n");mark+; if(i+1)<num) printf("ttt是否繼續(xù)查找相同名稱(chēng)的藥品信息:(y/n)n"); if(getch()='y' | getch()='Y') continue; else return(
17、0); else printf("ttt請(qǐng)按任意鍵返回主菜單"); getch(); return(0); if(mark = 0) printf("ttt沒(méi)有您要查找的藥品記錄n"); printf("ttt請(qǐng)按任意鍵返回主菜單n"); getch(); return(0); return 0;int searchbynumber()int mark=0;int i;printf("ttt-按藥品編號(hào)查找 -n");char number10;printf("ttt請(qǐng)輸入藥品編號(hào):n");sc
18、anf("%s",number);for(i=0;i<num;i+) if (strcmp(medicinei.number,number)=0) printf("ttt-以下是您查找的藥品信息 -n"); printf("ttt藥品名稱(chēng): %s",); printf("ttt藥品編號(hào): %s",medicinei.number); printf("ttt單價(jià): %s",medicinei.price); printf("ntt品牌: %s"
19、,medicinei.brand); printf("ttt庫(kù)存數(shù)量:%sn",medicinei.inventory); printf("ttt-n"); printf("ttt請(qǐng)按任意鍵返回主菜單n"); mark+; getch(); return(0); if (mark=0) printf("ttt沒(méi)有改藥品的信息n"); printf("ttt請(qǐng)按任意鍵返回主菜單n"); getch(); return(0);return(0);void deletebynumber()int i,
20、j;int deletemark=0;char number20; printf("ttt請(qǐng)輸入要?jiǎng)h除藥品編號(hào):n"); scanf("%s",number); if(num=0) printf("ttt對(duì)不起,系統(tǒng)中無(wú)任何記錄n"); printf("ttt請(qǐng)按任意鍵返回主菜單n"); getch(); return; for (i=0;i<num;i+) if (strcmp(medicinei.number,number)=0) printf("ttt以下是您要?jiǎng)h除的用戶記錄:n")
21、; printf("ttt藥品名稱(chēng): %s",); printf("ttt藥品編號(hào): %s",medicinei.number); printf("ttt單價(jià): %s",medicinei.price); printf("ntt品牌: %s",medicinei.brand); printf("ttt庫(kù)存數(shù)量:%sn",medicinei.inventory); printf("ttt是否刪除?(y/n)"); if (getch()='y
22、' | getch()='Y') for (j=i;j<num-1;j+) medicinej=medicinej+1; num-; deletemark+; printf("ttt刪除成功"); printf("ttt是否繼續(xù)刪除?(y/n)"); if (getch()='y' | getch()='Y') deletebynumber(); return; else return; continue; if (deletemark=0) printf("ttt沒(méi)有該藥品的記錄&
23、quot;); printf("ttt是否繼續(xù)刪除?(y/n)"); if(getch()='y' | getch()='Y') deletebynumber(); return; return;void deletebyname()int a=0;int findmark=0;int j;int deletemark=0;int i;char name20;printf("ttt請(qǐng)輸入要?jiǎng)h除藥品名稱(chēng):n");scanf("%s",name);for (i=a;i<num;i+) if(strcm
24、p(,name)=0) printf("ttt以下是您要?jiǎng)h除的藥品信息:"); findmark+; printf("ttt_"); printf("ttt藥品名稱(chēng): %s",); printf("ttt藥品編號(hào): %s",medicinei.number); printf("ttt單價(jià): %s",medicinei.price); printf("ntt品牌: %s",medicinei.brand); printf(
25、"ttt庫(kù)存數(shù)量:%sn",medicinei.inventory); printf("ttt_"); printf("ttt是否刪除?(y/n)"); if (getch()='y' | getch() = 'Y') for(j=i;j<num-1;j+) medicinej=medicinej+1; num-; deletemark+; printf("ttt刪除成功"); if(i+1)<num) printf("ttt是否繼續(xù)刪除相同名稱(chēng)的藥品信息?(y
26、/n)"); if (getch()='y') a=i; continue; printf("ttt是否繼續(xù)刪除?(y/n)"); if (getch()='y') deletebyname(); return; if(i+1)<num) printf("ttt是否繼續(xù)刪除相同名稱(chēng)的藥品信息?(y/n)"); if (getch()='y' | getch() = 'Y') a=i; continue; elsecontinue;if (deletemark=0)&&
27、amp;(findmark=0) printf("ttt沒(méi)有該藥品的記錄"); printf("ttt是否繼續(xù)刪除?(y/n)"); if(getch()='y' | getch() = 'Y') deletebynumber(); return;else if (findmark!=0) printf("ttt沒(méi)有重名信息"); printf("ttt沒(méi)有該藥品的記錄"); printf("ttt是否繼續(xù)刪除?(y/n)"); if(getch()='y
28、' | getch() = 'Y') deletebynumber(); return; int dele() /刪除記錄char choic; printf("ttt1-按藥品編號(hào)刪除 2-按藥品名稱(chēng)刪除"); printf("ttt請(qǐng)選擇:"); choic=getch();switch (choic) case '1':deletebynumber();break; case '2':deletebyname();break; return(0);int sortbyprice() /按藥品單
29、價(jià)進(jìn)行排序 int i,j; struct medicine tmp; for (i=1;i<num;i+) if(strcmp(medicinei.price,medicinei-1.price)<0) tmp=medicinei; j=i-1; do medicinej+1=medicinej; j-; while (strcmp(tmp.price,medicinej.price)<0&&j>=0); medicinej+1=tmp; printf("ttt排序成功,是否顯示?(y/n)"); if (getch()='
30、y') list(); return(0);int main() printf("tt-n"); printf("tt-Welcome to management system -n"); printf("tt-Made By FACE CARD-n"); printf("tt-n"); printf("請(qǐng)按任意鍵進(jìn)入主菜單:)n"); getch(); int selectnum; while(1) selectnum = menu_select(); switch(selectnum
31、) case 1:addmedicine(); /添加藥品信息break;case 2: list(); break;case 3: modifybyname(); /修改藥品信息 break;case 4: searchbynumber(); /按藥品編號(hào)查找 break;case 5: sortbyprice(); /按藥品單價(jià)排序 break;case 6: dele(); break;case 7:printf("BYE BYE!n");system("pause");getchar(); exit(0); getchar(); return 0
32、; 5、 測(cè)試結(jié)果(說(shuō)明系統(tǒng)的各模塊運(yùn)行結(jié)果(附運(yùn)行界面圖片),正式報(bào)告需將括號(hào)內(nèi)文字刪除)1、進(jìn)入系統(tǒng)運(yùn)行界面2、 添加藥品信息3、 顯示藥品信息4、 修改藥品信息5、 按編號(hào)查找藥品信息6、 按價(jià)格排序7、 刪除藥品信息8、 退出系統(tǒng)6、 總結(jié)(談?wù)勛约旱恼n程設(shè)計(jì)中的心得體會(huì),正式報(bào)告需將括號(hào)內(nèi)文字刪除)整個(gè)實(shí)驗(yàn)比較復(fù)雜,我使用switch語(yǔ)句調(diào)用菜單中的各個(gè)功能軟件調(diào)用不同的函數(shù)來(lái)實(shí)現(xiàn)不同的功能,通過(guò)反復(fù)調(diào)用函數(shù)來(lái)實(shí)現(xiàn)反復(fù)輸入。代碼中通過(guò)scanf從鍵盤(pán)上輸入不同的數(shù)字選項(xiàng),然后通過(guò)swtich case()來(lái)實(shí)現(xiàn)對(duì)不同函數(shù)的調(diào)用。接下來(lái)對(duì)編程的各個(gè)模塊進(jìn)行解讀:a在實(shí)現(xiàn)顯示菜單功能時(shí),
33、用DO-WHILE執(zhí)行對(duì)菜單功能的選擇比較數(shù)字在17之間可繼續(xù)執(zhí)行。swtich case()來(lái)實(shí)現(xiàn)對(duì)不同函數(shù)的調(diào)用,執(zhí)行之后各個(gè)獨(dú)立的模塊。b在添加藥品基本信息時(shí),我用了三個(gè)函數(shù)調(diào)用來(lái)分別輸入藥品基本信息(藥品編號(hào)、名稱(chēng)、單價(jià)、庫(kù)存數(shù)量、品牌)由程序可以看出,在添加藥品信息板塊上,我設(shè)計(jì)了五類(lèi)信息,輸入名稱(chēng),輸入品牌,輸入編號(hào),輸入單價(jià)和輸入庫(kù)存數(shù)量輸入完成后會(huì)提示是否繼續(xù)輸入,如果輸入y后則可以繼續(xù)輸入,輸入n后返回主菜單。調(diào)用addmedicine()函數(shù)后,就可以通過(guò),medicinenum.number,medicinenum.price,medicinenum.inventory,medicinenum.brand 數(shù)組從鍵盤(pán)上輸入藥品編號(hào),名稱(chēng)、單價(jià)、庫(kù)存數(shù)量、品牌,輸入完畢后,系統(tǒng)會(huì)提示是否繼續(xù)輸入,輸入“y”后,則再次調(diào)用addmedicine(); 函數(shù),如此循環(huán),直到不輸入藥品信息為止。c在顯示和查詢藥品信息部分,輸入對(duì)應(yīng)的數(shù)字便可以實(shí)現(xiàn)對(duì)應(yīng)的功能,同理,系統(tǒng)會(huì)在您查詢完畢后詢問(wèn)您是否繼續(xù)查詢,從而實(shí)現(xiàn)人機(jī)友好的宗旨。通過(guò)scanf("%s",name) 從鍵盤(pán)上輸入的藥品名稱(chēng)利用if (strcmp(,name
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 四年級(jí)數(shù)學(xué)四則混合運(yùn)算質(zhì)量練習(xí)習(xí)題
- 城市隧道爆破施工合同模板
- 2025年度國(guó)企勞動(dòng)合同范本修訂新標(biāo)準(zhǔn)
- 2025年度城市公共綠地建設(shè)貸款合同標(biāo)準(zhǔn)范本
- 2025年度裝配式建筑工地二次結(jié)構(gòu)構(gòu)件安裝合同范本
- 2025年度網(wǎng)絡(luò)安全防護(hù)合同更改擔(dān)保協(xié)議書(shū)
- 2025年度建筑幕墻施工合同專(zhuān)用條款
- 2025年度文化園區(qū)物業(yè)管理與文化活動(dòng)組織合同
- 2025年度建筑木工勞務(wù)輸出合作框架合同
- 2025年度化肥環(huán)保技術(shù)改造項(xiàng)目合同
- 高原鐵路建設(shè)衛(wèi)生保障
- 家具廠各崗位責(zé)任制匯編
- 顳下頜關(guān)節(jié)盤(pán)復(fù)位固定術(shù)后護(hù)理查房
- 硝苯地平控釋片
- 四川省瀘州市2019年中考物理考試真題與答案解析
- 部編版語(yǔ)文六年級(jí)下冊(cè)全套單元基礎(chǔ)??紲y(cè)試卷含答案
- 提高檢驗(yàn)標(biāo)本合格率品管圈PDCA成果匯報(bào)
- 2023年保險(xiǎn)養(yǎng)老地產(chǎn)行業(yè)分析報(bào)告
- 世界古代史-對(duì)接選擇性必修(真題再現(xiàn)) 高考?xì)v史一輪復(fù)習(xí)
- 保險(xiǎn)公司防火應(yīng)急預(yù)案
- 動(dòng)物檢疫技術(shù)-動(dòng)物檢疫的分類(lèi)(動(dòng)物防疫與檢疫技術(shù))
評(píng)論
0/150
提交評(píng)論