




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、【精品文檔】如有侵權(quán),請聯(lián)系網(wǎng)站刪除,僅供學(xué)習(xí)與交流c語言購物系統(tǒng).精品文檔.C語言課程設(shè)計(jì)報(bào)告班學(xué)號(hào): *姓名: *指導(dǎo)老師: *日期: *中國地質(zhì)大學(xué)(武漢)計(jì)算機(jī)學(xué)院一、題目要求系統(tǒng)主要功能模塊:1,實(shí)現(xiàn)系統(tǒng)內(nèi)制卡,發(fā)卡功能。2,實(shí)現(xiàn)系統(tǒng)內(nèi)購物卡帳戶及相關(guān)帳戶管理。3,實(shí)現(xiàn)購物卡交易和合法性檢查。4,實(shí)現(xiàn)購物卡交易積分功能。5,實(shí)現(xiàn)購物卡報(bào)表功能。6,數(shù)據(jù)以文件形式存儲(chǔ)。提示:制卡:指申請一個(gè)購物卡,但還沒有使用。發(fā)卡:指該卡已經(jīng)起用。實(shí)現(xiàn)卡交易:指從卡中消費(fèi)掉一定金額。二、需求分析根據(jù)題目要求,由于購物卡信息是存放在文件中,所以應(yīng)提供文件的輸入、輸出等操作;在程序中需瀏覽購物卡的信息,
2、應(yīng)提供報(bào)表、查詢等操作;另外還應(yīng)提供鍵盤式選擇菜單實(shí)現(xiàn)功能選擇。三、總體設(shè)計(jì)根據(jù)需求分析,可以將系統(tǒng)分為五大模塊:制卡、發(fā)卡、登陸、報(bào)表、積分。購物卡管理系統(tǒng)制卡模塊發(fā)卡模塊登錄模塊積分模塊報(bào)表模塊查詢儲(chǔ)蓄修改密碼消費(fèi)四、詳細(xì)設(shè)計(jì)1、主函數(shù)將main()函數(shù)體內(nèi)的界面選擇部分語句單獨(dú)抽取出來作為一獨(dú)立函數(shù),目的在于系統(tǒng)執(zhí)行完每部分功能模塊后能夠方便返回到系統(tǒng)界面。void menu()int v,w1;doprintf(tt*MENU*nn);printf(tttt 1.card-maden);printf(tttt 2.card-lifen);printf(tttt 3.card-enter
3、n);printf(tttt 4.card-browsen);printf(tttt 5.exitn);printf(nntt *n);printf(Choice your number(1-5):bb);scanf(%d,&v);if(v5)w1=1;getchar();else w1=0;while(w1=1);switch(v)case 1:made();break; case 2:life();break; case 3:enter();break; case 4:browse();break; case 5:exit(0); 2、各功能模塊設(shè)計(jì)(1)制卡模塊【數(shù)據(jù)結(jié)構(gòu)】struct
4、credicard int number;char name20;char ID20;char word8;int flag;float account; int integal; cardM;/*cardM中每個(gè)數(shù)組元素對應(yīng)一個(gè)運(yùn)動(dòng)員信息* /【程序】void made() int i;char h20;doprintf(nnt Input your number:bbbbbbb);scanf(%s,h);if(strlen(h)!=6)printf(nnntt*Wrong!Input again*nn);continue;for(i=0;in;i+)if(strcmp(cardi.ID,h
5、)=0)printf(nntt*The number exist,input again*nn);break;while(strlen(h)!=6)|strcmp(cardi.ID,h)=0); cardn.number=n;strcpy(,*);strcpy(cardn.ID,h);strcpy(cardn.word,000000);cardn.flag=0;cardn.account=0.00;egal=0; printf(nnntt*The card is made!*nn); print_one(n);n+; add();menu();print_
6、one(n):顯示一張卡信息的函數(shù)?!境绦颉縱oid print_one(int j) printf(n|-|-|-|-|-|-|); printf(n|NO. | name | ID |flag| account | integal |); printf(n|-|-|-|-|-|-|); printf(n|%4d|%20s|%20s|%4d|%10.2f|%10d|, cardj.number,,cardj.ID,cardj.flag,cardj.account,egal); printf(n|-|-|-|-|-|-|);(2)發(fā)卡模塊void life
7、() int k=-1;char h20;if(n=0) printf(nntt*Make card first*n);elseprintf(nnt Input your applied number:bbbbbbb);scanf(%s,h);k=search(h);if(k=-1)printf(nnttt*Wrong number!*n);elseif(cardk.flag=1)printf(nntt*Life already!*n);else huo(k);menu();huo(k):激活一張卡的函數(shù)。void huo(int k) char m20,p8;int x,w2;do prin
8、tf(nntt Life? (1) Yes (2) No n); printf(ntt Chioce your number:bb); scanf(%d,&x); if(x2) w2=1;getchar(); else w2=0;while(w2=1);if(x=1)printf(nnttInput your name:bbbbbbbbbbbbbbbbbbbb);scanf(%s,m);strcpy(,m);printf(nnttInput six-number code :bbbbbbb);scanf(%s,p); strcpy(cardk.word,p); cardk.
9、flag=1; printf(nnntt*Life!*nn);print_one(k); add();(3)登陸模塊void enter() int k=-1;char h20;if(n=0) printf(nntt*Make card first*n);elseprintf(nntInput your applied number:bbbbbbb);scanf(%s,h);k=search(h);if(k=-1)printf(nnttt*Wrong number!*n);elseif(cardk.flag=0)printf(nntt*LIFE FIRST!*n);elsehedui(k);m
10、enu();hedui(k):登陸信息。void hedui(int k) int c=0,w3=0;char p8;doprintf(nntt*Input your code:bbbbbbb);scanf(%s,p); if(strcmp(cardk.word,p)!=0) printf(nntt*Wrong code!*n); c+; continue;elseprintf(nntt*Right code!*n);w3=1; menu1(k);while(w3=0&c3);子菜單設(shè)計(jì)如下:void menu1(int k) int v,w4;printf(tt*MENU*nn);print
11、f(tttt 1.Inquiren);printf(tttt 2.Depositn);printf(tttt 3.fetchn);printf(tttt 4.change coden);printf(tttt 5.back to menun);printf(nntt *n);printf(Choice your number(1-5):bb);scanf(%d,&v);if(v5)w4=1;getchar();else w4=0;while(w4=1);switch(v)case 1:stat_one(k);break;case 2:deposit(k);break;case 3:fetch(
12、k);break;case 4:change(k);break; case 5:menu();子模塊設(shè)計(jì)如下查詢模塊:void stat_one(int k)printf(nntt*Operate successfully!*);print_one(k);menu1(k);儲(chǔ)蓄模塊void deposit(int k)float a=0.00;printf(nnttInput your amount:bbbbbbbbbbb);scanf(%f,&a);cardk.account+=a; printf(nntt*deposit successfully!*);print_one(k);add()
13、;menu1(k);消費(fèi)模塊:void fetch(int k) float b=0.00;printf(nnttInput your amount:bbbbbbbbbbb);scanf(%f,&b);if(bcardk.account)printf(nntt*Remaining sum is not enough !*);else cardk.account-=b; egal=b; printf(nntt*Your patronage !*); print_one(k); add();menu1(k);修改密碼模塊:void change(int k) char a8,b8
14、;printf(nnttInput new six-number code:bbbbbbb);scanf(%s,a);printf(nttInput new code again:bbbbbbb);scanf(%s,b);if(strcmp(a,b)=0)printf(nntt*Code change!*);add();elseprintf(nnttDifferent codes,code change failed!);menu1(k);(4)報(bào)表模塊:void browse() int i; if(n=0) printf(nntt*Make card first!*); else prin
15、tf(nntt*Operate successfully!*n); printf(n|-|-|-|-|-|-|); printf(n|NO. | name | ID |flag| account | integal |); printf(n|-|-|-|-|-|-|); for(i=0;in;i+) printf(n|%4d|%20s|%20s|%4d|%10.2f|%10d|, cardi.number,,cardi.ID,cardi.flag,cardi.account,egal); printf(n|-|-|-|-|-|-|);menu( );3、公
16、共函數(shù)(1)保存函數(shù)void add() int i;FILE *fp;if(fp=fopen(score.txt,wb)=NULL)printf(tt Can not open the file n);return;for(i=0;in;i+)if(fwrite(&cardi,sizeof(struct credicard),1,fp)!=1)printf(tt File write error n);return;fclose(fp);printf(nnntt*Keep!*n);(2)查找函數(shù)int search(char h20)int i,k=-1;for(i=0;in;i+)if(strcmp(cardi.ID,h)=0)k=i;return(k);五、運(yùn)行結(jié)果(1)主菜單(2)制卡模塊:輸入卡號(hào)(3)制卡成功(4)發(fā)卡模塊(5)發(fā)卡成功(6)登錄模塊(7)儲(chǔ)蓄成功(8)修改密碼(9)報(bào)表功能六、總結(jié) 以前在沒有做課程設(shè)計(jì)的時(shí)候,總覺得自己編寫一個(gè)程序那簡直就是天方夜譚,自己怎么可能寫的出來。可是現(xiàn)在,照著書本一點(diǎn)點(diǎn)模仿設(shè)計(jì),自己竟然也可
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 礦山資源管理信息化與智能化考核試卷
- 外貿(mào)英語函電易露露課件
- 船舶拆除作業(yè)中的質(zhì)量控制關(guān)鍵點(diǎn)考核試卷
- 塑造卓越行為模式
- 塑造活力校園文化
- 碩士論文攻略
- 寧夏警官職業(yè)學(xué)院《全面預(yù)算管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 吉林省長春市南關(guān)區(qū)市級(jí)名校2024-2025學(xué)年中考模擬最后十套:生物試題(八)考前提分仿真卷含解析
- 江蘇省無錫市錫東片2025屆初三下學(xué)期質(zhì)量檢查(一)化學(xué)試題含解析
- 江西省鄱陽縣2025屆初三年級(jí)第三次月考語文試題含解析
- 技能興威第一屆威海市職業(yè)技能大賽“CAD機(jī)械設(shè)計(jì)”賽項(xiàng)樣題
- 5年(2020-2024)高考1年模擬生物真題分類匯編(北京專用) 專題18 基因工程(原卷版)
- 企業(yè)綠色發(fā)展策略及實(shí)施方案
- 2024-2025年遼寧省面試真題
- 2024年高考真題河北卷化學(xué)試題(原卷版)
- 2024年高考真題-地理(河北卷) 含答案
- 【天潤乳業(yè)資本結(jié)構(gòu)問題及優(yōu)化對策分析案例10000字】
- 《建筑施工現(xiàn)場環(huán)境與衛(wèi)生標(biāo)準(zhǔn)》JGJ146-2013
- 水泵房設(shè)施設(shè)備巡檢標(biāo)準(zhǔn)記錄表
- 2024年浙江省中考科學(xué)試卷
- 無人機(jī)組裝與調(diào)試課件:無人機(jī)概述
評(píng)論
0/150
提交評(píng)論