c語言商品訂購系統(tǒng)設(shè)計_第1頁
c語言商品訂購系統(tǒng)設(shè)計_第2頁
c語言商品訂購系統(tǒng)設(shè)計_第3頁
c語言商品訂購系統(tǒng)設(shè)計_第4頁
c語言商品訂購系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩18頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、課程設(shè)計說明業(yè):學(xué)號:2017年4月24日-2017年5月12日日期:2017年5月12日目:商品訂購系統(tǒng)設(shè)計名:設(shè)計目的提高自己程序調(diào)試技巧、軟件設(shè)計能力和代碼規(guī)范化等素質(zhì);任務(wù)概述屏幕上出現(xiàn)選擇界面,管理員和顧客進(jìn)行權(quán)限選擇進(jìn)入。1)顧客具備的功能:讓顧客或輸入商品名稱,或商品型號,或選擇列表進(jìn)而輸入商品編號都可以,如查到所選商品,貝例出商品編號、商品名稱、商品型號、商品價格、商品產(chǎn)地、庫存數(shù)量和已訂購數(shù)量;然后給出選購流程:所選商品編號-列出對應(yīng)商品的信息-要求顧客輸入郵寄地址信息-確認(rèn)訂購,是否繼續(xù)選購其它商品,列出所有選訂商品,再次確認(rèn)訂購。2)管理員具備的功能:錄入、修改、刪除商品

2、。3)建立兩個文件,分別存放商品信息與訂購信息。模塊劃分能,功能模塊圖如圖3.1 所示 商品訂購系統(tǒng)設(shè)計普管通理用員1)進(jìn)一步鞏固和復(fù)習(xí)C程序設(shè)計的基礎(chǔ)知識;2)培養(yǎng)自己結(jié)構(gòu)化程序、模塊化程序設(shè)計的方法和能力;3)了解軟件的編制過程及各環(huán)節(jié)的具體內(nèi)容;4)5)提高自己分析問題、解決問題以及實際運用能力。商品訂購系統(tǒng)設(shè)計有如下功4 4 主要函數(shù)說明及其 N-SN-S 圖輸入strvoid goodsnanmeio;0 t0 10/ 通過商品名查詢strc mp (i nfori. name.str)圖真通過商品名查詢圖 4.1 通過商品名查詢輸出=+1-報錯c3oo27輸入a真圖 4.2通過商品

3、編號查詢use() in fori.codeooabuygoods()真通過商品編號查詢真use() buygoods()輸出r=r+1c3=27程序退出()1ou&LUInuLU理MOHi(eLP-LLP)duJOlss宜霑售旦贓邂田綽丄0乂。荷匸。理W,豈忑脛憾匿薦&亠一習(xí)U一out putallO圖 4.5f購買商品0rin fori.code=a5 5 程序運行數(shù)真及其結(jié)果主界面過程截圖如圖 5.5 所示r=r+1、Ordernum=l圖5. .程序退出商品(過程)j=過程截圖如圖5.2 所示If Last!罰 5.25.2 添加商品(過程)添加添加購買真商假(結(jié)果)過

4、程截圖如圖輸入的數(shù)量有效 真假商品過程截圖如圖)5us所示圖 5.45.4 購買商品5.3 所示圖 5.35.3 添加商程序退果)刪除商品過程截圖如圖5.5 所示圖 5.55.5 刪除商品6 6 課程設(shè)計心得首先得感謝同學(xué)對我的幫助。一幵始編的時候bug很多,上網(wǎng)找了很多資料,去圖書館也查了不少的書,終于解決了他們。以前寫的代碼結(jié)構(gòu)混亂,變量命名,函數(shù)命名混亂,沒有注釋,寫出來做程序有時候自己也看不懂。在完完整整得做完一個程序后我對結(jié)構(gòu)化程序的整體性有了一個明確的認(rèn)識,必須注意程序前后的聯(lián)系,要做到高內(nèi)聚,低耦合,要具有清晰的思路,要提前畫好完善的流程圖程序要具有層次。對整體性的把握至關(guān)重要,

5、學(xué)習(xí)計算機(jī)語言最重要的就是上機(jī)操作,多實踐,才能發(fā)現(xiàn)自己的不足。在以后的學(xué)習(xí)中,我要做到舉一反三,多思考,勤動腦,通過這次的實訓(xùn),我總結(jié)出在以后學(xué)習(xí)中還必須多多上機(jī)編寫程序,從實踐中多積累經(jīng)驗,為以后進(jìn)一步學(xué)習(xí)打下堅實基礎(chǔ)。附錄:程序源代碼#in elude #in elude#in elude #in elude /* 商品信息 */struct goodsint code;/編號char name20;/商品名char company20;/生產(chǎn)公司名double price;/價格char model20;/型號int save;/庫存數(shù)量int sell;/訂購數(shù)量infor100=1

6、,iPhone7,美國蘋果公司 ,5388,32GB,10,0,2, 朗文字典 , 朗文出版社,318, 第五版 ,10,0,3,手表, 勞力士 ,54588, 蠔式恒動型 ,10,0,4, 桌子, 宜家,88,2017 夏季家居,10,0,5, 杯子, 特百惠 ,5388,470ml,10,0;/* 訂購信息 */int code;/編號char name20;/商品名char company20;/生產(chǎn)公司名double price;/價格char model20;/型號int number;/ 訂購數(shù)量char address20;/地址buy5;int Ordernum;/訂購數(shù)量in

7、t j,r=5;/用于比較的全局變量int Last;/訂購后剩余的庫存char address41;/訂購地址void menu_main();/主菜單畫面void use();/普通用戶畫面void key();/輸入密碼void admin();/管理員畫面void buyfile();/建立訂購文件structordervoid goodsname();/通過商品名查詢void goodscode();/通過編號查詢void buygoods();/購買商品void addaddress();/添加地址void add();/管理員添加商品void del();/管理員刪除商品void

8、 change();/管理員修改商品void outputall();/輸出所有商品void writebuyfile();/寫入訂購信息/ 主函數(shù)int main()/ 建立商品信息文件FILE *fp;int i;最高機(jī)密 .txt,wb)=NULL)printf(cannot open filen);return;for(i=0;i5;i+)i f(fwrite (&infori,sizeof(struct goods),1,fp)!=1)printf(file write errorn);f close(fp);buyfile();menu_main();/ 主菜單 void

9、menu_main()int n;printf(printf(tttt*n);n);printf( 感謝使用本系統(tǒng)! );exit(0);/ 輸入密碼函數(shù) void key()char ch1=12345;char ch210;printf(n);scanf(%s,ch2);printf(tttt-商品訂購系統(tǒng) -printf(tttt*請選擇*n);printf(tttt*1.普通用戶*n)printf(tttt*2.管理員*n);printf(tttt*3.退出系統(tǒng)*n)printf(tttt*請輸入你的選擇:*printf(tttt*n);printf(n);printf(tttt);s

10、canf(%d,&n);system(cls);switch(n) case1:use();break; / case2:key();break; / case3:system(cls);選擇普通用戶選擇管理員printf(nnnnnnnn);Hprintf(tttt請輸入n);printf(tttt請輸入密碼: );if(strcmp(ch1,ch2)!=0)printf( 密碼錯誤! );system(cls);menu_main();elseadmin();/ 創(chuàng)建購買文件函數(shù) void buyfile()FILE *fp;int i;訂購 .txt,wb)=NULL)print

11、f(cannot open filen);return;for(i=0;i5;i+)i f(fwrite (&buyi,sizeof(struct order),1,fp)!=1)printf(file write errorn);f close(fp);/ 用戶函數(shù) void use()int n;printf(tttt*n);printf(tttt-用戶系統(tǒng) - n);printf(tttts,:4A4A請選擇n);printf(tttt=printf(tttt*1.輸入商品名查詢*n);printf(tttt*2.輸入編號查詢*n);printf(tttt*3.輸出所有商品的信息

12、*n)printf(tttt*4.返回上級菜單*n);n);printf(tttt*n);scanf(%d,&n);system(cls);switch(n)case 1:goodsname();break;case 2:goodscode();break;case 3:outputall();break;case 4:menu_main();break;/ 管理員函數(shù) void admin()int n;printf(tttt*n);printf(tttt*n);printf(ttttscanf(%d,&n);switch(n)case 1:add();break;case

13、2:del();break;case 3:change();break;case 4:system(cls);menu_main();break;/ 輸入商品名查詢void goodsname() int i,k=0;/k 是比較的結(jié)果 i 控制循環(huán) char str24,c3;printf(tttt管理員系統(tǒng)n);printf(tttt請選擇n);n);printf(tttt1.添加信息 n);printf(tttt2.刪除信息 n);printf(tttt3.修改信息 n);printf(tttt4.返回上級菜單 n);printf(n);FILE *fp;最高機(jī)密 .txt,r);pri

14、ntf(n 請輸入你要查找的名稱 :);scanf(%s,&str);printf(n 您所查找的 %sn,str);for(i=0;ir;i+) f read(&infori,sizeof(struct goods),1,fp);k=strcmp(,str);if (k=0) printf(%4d %-10s %-12s %9.2f %-5s %5d%4dn,infori.code,,infori.model,infori.price,pany,infori.save,infori.sell);r=r+1;fclose(fp);if

15、(r!=0)printf( 請按任意鍵選購,取消或產(chǎn)品不存在按ESC: n);char c3=getch();if(c3=27) printf(n);system(cls);use();if(c3=27)printf(n);else buygoods();/ 輸入編號查詢void goodscode() int i,r=0;int a; / 輸入的編號FILE *fp;最高機(jī)密 .txt,r);printf( 請輸入要查找的商品編號 (請勿輸入不存在的編號 ): nn);scanf(%d,&a);printf( 您查找的是 %dnn,a);for(i=0;i5;i+) f read(&

16、amp;infori,sizeof(struct goods),1,fp);i f(infori.code=a)printf( 這就是你訂購的商品 : nn);printf(%4d %-10s %-12s %9.2f %-5s %5d%4dn,infori.code,,infori.model,infori.price,pany,infori.save,infori.sell);r+;fclose(fp);if(r!=0) printf( 請按任意鍵選購,取消按 ESC: n);char c3=getch();printf(n);system(cls);use();els

17、ebuygoods();/ 輸入編號訂購 void buygoods()int i,r=0;int a;char ch;FILE*fp;f p=fopen( 最高機(jī)密 .txt,rb);outputall();printf(n 請輸入您想訂購商品的編號 ( 請勿輸入不存在的編號 ):nn);scanf(%d,&a);f or(i=0;i=0 &buyj.number=(inforOrdernum.save-inforOrdernum.sell) addaddress();else printf( 您填寫的數(shù)量有誤,請重新購買 nn);use();/ 添加地址函數(shù) void ad

18、daddress()char ch;printf( 請輸入郵寄地址: nn);scanf(%s,&address);printf( 您的地址是 :%snn,address);ch=getch();printf(n);if (ch!=27)printf( 您已成功訂購!謝謝使用!nn);voidwritebuyfile();use();void add()inti;printf( 確認(rèn)請按任意鍵,重輸請按ESCnn);printf(cannot open filen);printf( 編號 名字 生產(chǎn)商 價格 型號 庫存數(shù)量 訂購數(shù)量 n);scanf(%d %s %s %lf %s %

19、d %d,&inforr.code,,pany,&inforr.price,inforr.model,&inforr.save,&inforr.sell);r+;FILE *fp;最高機(jī)密 .txt,wb)=NULL)printf(cannot openfilen);return;for(i=0;ir;i+)if(fwrite (&infori,sizeof(structgoods),1,fp)!=1)printf(file writeerrorn);printf( 商品添加成功! n);fclose(fp);admin();voi

20、ddel()system(cls);inti,j;printf( 請輸入刪除的商品名: n);scanf(%d,&j);for(i=0;ir;i+)if(infori.code=j)infori.code=0;FILE *fp;最高機(jī)密 .txt,wb)=NULL)return;for(i=0;ir;i+)i f(infori.code!=0)i f(fwrite (&infori,sizeof(struct goods),1,fp)!=1)printf(file write errorn);printf( 商品刪除成功! );fclose(fp);admin();void c

21、hange()system(cls);char ch;char company20,model100;int i,j,code,price,save,sell;printf( 請輸入要修改的產(chǎn)品編號: n);scanf(%d,&j);for(i=0;ir;i+)i f(infori.code=j)printf( 商品編號 :%dn 商品名稱 :%sn 生產(chǎn)商 :%sn 商品單價 :%dn 商品型號 :%sn 庫存數(shù)量 :%dn 已經(jīng)訂購數(shù)量 :%dn,infori.code,,pany,infori.price,infori.model,infori.save,i

22、nfori.sell);printf( 請輸入您想修改的商品的一條信息: (1. 生產(chǎn)商 2.價格 3.型號 4.庫存 5.已經(jīng)訂購數(shù)量)n);getchar();scanf(%c,&ch);switch(ch)case1:printf( 請輸入商品生產(chǎn)商:/輸出所有信息void outputall()int i;);scanf(%s,&company);strcpy(pany,company);break;case2:printf( 請輸入商品單價:);scanf(%d,&price);infori.price=price;break;case3:printf( 請輸入商品型號:);getchar();scanf(%s,&model);strcpy(infori.model,model);break;case4:printf( 請輸入商品庫存:);getchar();scanf(%d,&save);infori.save=save;break;case5:printf( 請輸入商品已經(jīng)訂購數(shù)量:);scanf(%d,&sell);infori.sell=s

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論