版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 《C語言程序設(shè)計(jì)》</b></p><p><b> 課程設(shè)計(jì)報(bào)告</b></p><p> 學(xué) 院:_電氣與信息工程學(xué)院_ 專業(yè)班級: </p><p> 學(xué)生姓名: 學(xué) 號: </p
2、><p> 設(shè)計(jì)地點(diǎn)(單位)________計(jì)算機(jī)自主學(xué)習(xí)中心 ________ __設(shè)計(jì)題目:________商品訂購系統(tǒng)設(shè)計(jì) ________ ____</p><p> 完成日期: 2012 年1月13日 </p><p> 指導(dǎo)教師評語: ______________________ _________________</p&
3、gt;<p> _________________________________________________________________________________________________________________________________________________________________________________________________________
4、 __________ _ </p><p> 成績(五級記分制):______ __________ 指導(dǎo)教師(簽字):________ ________ </p><p><b> 摘 要</b></p><p> 通過本軟件的學(xué)習(xí)、編譯。
5、可以很好的掌握程序中結(jié)構(gòu)體的運(yùn)用、界面的使用等,以及更熟練的掌握了使用fprintf與fscanf向文件讀寫一組數(shù)據(jù)??梢酝耆?、熟練的、掌握、運(yùn)用switch語句來實(shí)現(xiàn)多分支選擇結(jié)構(gòu)。同時(shí),使用、學(xué)習(xí)者也能夠?qū)W習(xí)、知道程序的許多細(xì)節(jié)問題通過每個(gè)函數(shù)模塊模式。以上這些的學(xué)習(xí)對今后的學(xué)習(xí)、編譯程序,以及學(xué)習(xí)好程序設(shè)計(jì)課程都有很大的幫助。</p><p> 關(guān)鍵詞:結(jié)構(gòu)體 界面 fread switch語句 &
6、lt;/p><p><b> 課程設(shè)計(jì)任務(wù)書</b></p><p> 設(shè)計(jì)題目:商品訂購系統(tǒng)設(shè)計(jì)</p><p><b> 目錄</b></p><p><b> 摘 要2</b></p><p><b> 課程設(shè)計(jì)任務(wù)書3<
7、/b></p><p> 1 軟件需求分析說明書6</p><p> 2 系統(tǒng)設(shè)計(jì)與分析7</p><p> 2.1 軟件界面設(shè)計(jì)7</p><p> 2.1.1第一模塊界面及實(shí)現(xiàn)代碼7</p><p> 2.1.3 第三模塊的實(shí)現(xiàn)及代碼10</p><p> 2
8、.1.4 第四模塊的實(shí)現(xiàn)及代碼14</p><p> 2.1.5 第五模塊的實(shí)現(xiàn)及代碼15</p><p> 2.1.6 第六模塊的實(shí)現(xiàn)及代碼18</p><p> 2.2 軟件的數(shù)據(jù)(結(jié)構(gòu))設(shè)計(jì)21</p><p> 2.3 軟件的算法設(shè)計(jì)22</p><p> 2.4 數(shù)據(jù)結(jié)構(gòu)分析23<
9、/p><p> 3 設(shè)計(jì)體會與小結(jié)24</p><p><b> 致謝25</b></p><p><b> 參考文獻(xiàn)26</b></p><p><b> 附錄127</b></p><p> 1 軟件需求分析說明書</p>
10、<p> 本軟件實(shí)現(xiàn)了商品信息的添加、刪除、修改、搜索,以及顯示商品的全部信息。使用者能夠很好的查看商品信息,以及訂購商品。</p><p> 本軟件的界面需要顯示各個(gè)單一功能的目錄,然后通過switch語句來實(shí)現(xiàn)各個(gè)單一功能的分支選擇,把界面與函數(shù)聯(lián)系起來。最終實(shí)現(xiàn)了,通過界面來達(dá)到軟件的要求。</p><p> 2 系統(tǒng)設(shè)計(jì)與分析</p><p
11、> 2.1 軟件界面設(shè)計(jì)</p><p> 畫出軟件全部輸入、輸出數(shù)據(jù)的界面,并對每一個(gè)界面進(jìn)行詳細(xì)的操作說明;</p><p> 2.1.1第一模塊界面及實(shí)現(xiàn)代碼</p><p><b> 圖如下:</b></p><p> 圖2.1主菜單的界面圖</p><p><b&g
12、t; 其對應(yīng)的函數(shù)如下:</b></p><p> int main(void)</p><p><b> {</b></p><p><b> int i;</b></p><p> wenbenload();</p><p><b> d
13、o</b></p><p><b> {</b></p><p> system("cls");</p><p> printf("\n\n\n\n\n\n");</p><p> printf("**************************歡
14、迎使用商品訂購系統(tǒng)v1.0******************************\n");</p><p> printf(" 作者: 計(jì)科1102 姚茂源\n");</p><p> printf(" ┏━━━━━━━━━━━━━━━━━━━┓\n"
15、);</p><p> printf(" ┃ 1.瀏覽商品信息 ┃\n");</p><p> printf(" ┃ 2.訂購商品 ┃\n");</p><p> p
16、rintf(" ┃ 3.訂單查詢 ┃\n");</p><p> printf(" ┃ 4.搜索商品 ┃\n");</p><p> printf("
17、 ┃ 5.管理菜單 ┃\n");</p><p> printf(" ┃ 0.退出系統(tǒng) ┃\n");</p><p> printf(" ┗━━━━━━━━━━━━━━━━━━━
18、┛\n");</p><p> printf("********************************************************************************\n");</p><p> printf("\n\n\t\t請輸入你的操作(0~5): ");</p><p
19、> scanf("%d",&i); </p><p><b> switch(i)</b></p><p><b> {</b></p><p> case 1: </p><
20、;p> system("cls");</p><p> scanproduct();</p><p><b> break;</b></p><p> case 2: </p><p> system("cls");</p><p&
21、gt; dinggou();</p><p><b> break;</b></p><p> case 3: </p><p> system("cls");</p><p> lookdinggou();</p><p
22、><b> break;</b></p><p> case 4: </p><p> searchproduct();</p><p><b> break;</b></p><p> case 5:
23、 </p><p> secondmain();</p><p><b> break;</b></p><p> case 0: //退出系統(tǒng)的界面</p><p> system("cls");</p>
24、<p> printf("\n\n\n\n\n\n\n\n");</p><p> printf("\n\n\t\t\t歡迎使用本系統(tǒng)\n\n\n\n\n\t\t\t歡迎再次使用\n");</p><p> exit(0); //exit用于隨時(shí)結(jié)束程序} </p
25、><p> }while(1); </p><p><b> return 0;</b></p><p><b> }</b></p><p> 其中的wenbenload()用于從文本中導(dǎo)入商品信息。</p><p&g
26、t; 如文本不存在則出現(xiàn)下圖</p><p> 圖2.2商品信息文本不存在的界面圖</p><p> 2.1.2 第二模塊的界面及實(shí)現(xiàn)代碼</p><p> 如果選擇的操作是主界面的1時(shí),而產(chǎn)品文件為建立時(shí)會顯示下圖:</p><p> 圖2.3第二模塊界面圖</p><p> 該程序的實(shí)現(xiàn)是通過以下代碼實(shí)
27、現(xiàn)的:</p><p> void scanproduct()</p><p><b> {</b></p><p><b> int i;</b></p><p> system("cls");</p><p> printf("\t
28、\t\t\t\t商品信息列表\n");</p><p> for (i = 0; i < inumber; i++)</p><p><b> {</b></p><p> printf("名稱 : %s\n",a[i].name);</p><p> printf(&quo
29、t;貨號 : %d\n",a[i].number);</p><p> printf("廠家 : %s\n",a[i].vender);</p><p> printf("產(chǎn)地 : %s\n",a[i].filed);</p><p> printf("存量 : %d\n",a[i]
30、.stock);</p><p> printf("單價(jià) : %.2lf\n\n\n",a[i].unvalent);</p><p><b> }</b></p><p> printf("\n\n\n\n\n\n\t\t\t");</p><p> printf(&q
31、uot;返回主菜單\n");</p><p> printf("\t\t\t");</p><p> system("pause");</p><p><b> return;</b></p><p><b> }</b></p>
32、<p> 2.1.3 第三模塊的實(shí)現(xiàn)及代碼</p><p> 在主菜單中選擇2進(jìn)入商品訂購界面,界面如下:</p><p><b> 圖2.4商品訂購</b></p><p> 圖2.5 輸入商品訂單信息</p><p> 該程序?qū)崿F(xiàn)代碼如下:</p><p> void
33、 dinggou() </p><p><b> {</b></p><p><b> char ch;</b></p><p> int i, j, t, c = 1;</p><p> int n = 1;</p><p> int m = 0;</
34、p><p><b> do</b></p><p><b> {</b></p><p><b> switch(n)</b></p><p><b> {</b></p><p><b> case 1:</
35、b></p><p> system("cls");</p><p> printf("\t\t\t\t商品信息列表\n");</p><p> //顯示商品的名稱、貨號信息,以便于訂購</p><p> printf("名稱\t 貨號\t 庫存\n");</p
36、><p> for (i = 0; i < inumber; i++)</p><p><b> {</b></p><p> printf("%s\t %d\t %d\n\n\n",a[i].name,a[i].number,a[i].stock);</p><p><b>
37、 }</b></p><p> printf("\n\n\n");</p><p> printf("\t\t\t\t商品訂單\n");</p><p> printf("\n\t\t\t請輸入你的第%d個(gè)訂單信息:\n",m + 1);</p><p> pr
38、intf("\n\t\t\t貨號:");</p><p> fflush(stdin);</p><p> scanf("%d",&b[ibuy].bgname);</p><p> //檢測是否含有此商品</p><p><b> j = 1;</b></p
39、><p> for (i = 0; i < inumber; i++)</p><p><b> {</b></p><p> if(a[i].number == b[ibuy].bgname)</p><p><b> {</b></p><p><b>
40、; j = 0;</b></p><p><b> t = i;</b></p><p><b> }</b></p><p><b> }</b></p><p> //若有商品繼續(xù)購買項(xiàng)目</p><p> if(j == 0
41、)</p><p><b> {</b></p><p> printf("\n\t\t\t訂購量:");</p><p> fflush(stdin);</p><p> scanf("%d",&b[ibuy].bmany);</p><p&g
42、t; if (a[t].stock >= b[ibuy].bmany)</p><p><b> {</b></p><p> a[t].stock = a[t].stock - b[ibuy].bmany; //顧客購買后商品的庫存計(jì)算</p><p> printf("\n\t\t\t日期時(shí)間:"
43、;);</p><p> fflush(stdin);</p><p> scanf("%d",&b[ibuy].btime);</p><p> printf("\n\t\t\t客戶名:");</p><p> fflush(stdin);</p><p>
44、 gets(b[ibuy].bname);</p><p> printf("\n\t\t\t客戶地址:");</p><p> fflush(stdin);</p><p> gets(b[ibuy].baddress);</p><p> printf("\n\t\t\t客戶號:");&l
45、t;/p><p> b[ibuy].bnumber = bgnumber;</p><p> printf("%d\n",b[ibuy].bnumber);</p><p> bgnumber++;</p><p><b> ibuy++;</b></p><p><
46、b> m++;</b></p><p> printf("\n\n\n\t\t\t\t");</p><p> system("pause");</p><p><b> }</b></p><p><b> else</b><
47、;/p><p><b> {</b></p><p> printf("\n\n\t\t\t訂購數(shù)目超出庫存\n");</p><p> printf("\t\t\t");</p><p> system("pause");</p><p
48、><b> }</b></p><p><b> }</b></p><p> //若沒有商品的提示及操作</p><p><b> else</b></p><p><b> {</b></p><p> pri
49、ntf("\n\n\t\t\t查無此貨\n");</p><p> printf("\t\t\t");</p><p> system("pause");</p><p><b> }</b></p><p><b> case 2:<
50、/b></p><p> printf("是否繼續(xù)輸入訂購?(Y/N)");</p><p> fflush(stdin);</p><p> scanf("%c",&ch);</p><p> if(ch == 'N' || ch == 'n')&
51、lt;/p><p><b> {</b></p><p><b> c = 0;</b></p><p><b> break;</b></p><p><b> }</b></p><p> else if(ch ==
52、39;Y' || ch == 'y')</p><p><b> {</b></p><p><b> c = 0;</b></p><p><b> n = 1;</b></p><p><b> break;</b>&l
53、t;/p><p><b> }</b></p><p> else if(ch != 'n' || ch != 'N' || ch != 'Y' || ch != 'y')</p><p><b> {</b></p><p><
54、;b> n = 0;</b></p><p><b> c = 1;</b></p><p><b> break;</b></p><p><b> }</b></p><p><b> case 0:</b></p&g
55、t;<p> if(c == 1)</p><p><b> {</b></p><p><b> n = 2;</b></p><p><b> }</b></p><p><b> }</b></p><p
56、> }while(ch != 'n' && ch != 'N');</p><p> system("cls");</p><p><b> return ;</b></p><p><b> }</b></p><p&
57、gt; 2.1.4 第四模塊的實(shí)現(xiàn)及代碼</p><p> 在主菜單中選擇3進(jìn)入商品訂購界面,界面如下:</p><p> 圖2.6訂單查詢界面</p><p> 該程序?qū)崿F(xiàn)代碼如下:</p><p> void lookdinggou() </p><p><b> {</b>
58、</p><p><b> int i;</b></p><p> system("cls");</p><p> printf("\t\t\t\t\t訂單列表\n");</p><p> for (i = 0; i < ibuy; i++)</p>&
59、lt;p><b> {</b></p><p> printf("貨號 : %d\n",b[i].bgname);</p><p> printf("訂購量 : %d\n",b[i].bmany);</p><p> printf("日期時(shí)間 : %d\n&quo
60、t;,b[i].btime);</p><p> printf("客戶名 : %s\n",b[i].bname);</p><p> printf("客戶地址 : %s\n",b[i].baddress);</p><p> printf("客戶號 : %d\n\n\n",b[i].bn
61、umber);</p><p><b> }</b></p><p> printf("\n\n\n\n\n\n\t\t\t");</p><p> printf("返回主菜單\n");</p><p> printf("\t\t\t");</p&
62、gt;<p> system("pause");</p><p><b> return;</b></p><p><b> }</b></p><p> 該代碼中用到了指針,并用到了鏈表的建立和刪除,當(dāng)然也涉及到了結(jié)構(gòu)體。</p><p> 2.1.5
63、第五模塊的實(shí)現(xiàn)及代碼</p><p> 在主菜單中選擇4進(jìn)入商品訂購界面,界面如下:</p><p><b> 圖2.7商品搜索1</b></p><p><b> 圖2.8商品搜索2</b></p><p><b> 通過以下代碼實(shí)現(xiàn):</b></p>
64、<p> void searchproduct()</p><p><b> {</b></p><p><b> int i;</b></p><p><b> int j;</b></p><p><b> char ch;</b>
65、</p><p> int n = 1;</p><p><b> do</b></p><p><b> {</b></p><p><b> switch(n)</b></p><p><b> {</b></
66、p><p><b> case 1:</b></p><p> system("cls");</p><p> printf("\t\t\t\t商品列表\n");</p><p> //顯示商品的名稱、貨號信息,以便于下部的刪除</p><p> f
67、or (i = 0; i < inumber; i++)</p><p><b> {</b></p><p> printf("名稱 : %s\n",a[i].name);</p><p> printf("ID : %d\n",i);</p><p> pri
68、ntf("庫存 : %d\n\n\n",a[i].stock);</p><p><b> }</b></p><p><b> //商品的搜索</b></p><p> printf("\n\n\n\t\t\t\t請輸入你要搜索商品的ID:");</p>&l
69、t;p> scanf("%d",&j);</p><p> if(0<=j&&j<=inumber)</p><p><b> {</b></p><p> printf("名稱 : %s\n",a[j].name);</p><p&
70、gt; printf("貨號 : %d\n",a[j].number);</p><p> printf("廠家 : %s\n",a[j].vender);</p><p> printf("產(chǎn)地 : %s\n",a[j].filed);</p><p> printf("存量 :
71、 %d\n",a[j].stock);</p><p> printf("單價(jià) : %.2lf\n\n\n",a[j].unvalent);</p><p><b> }</b></p><p><b> case 2:</b></p><p> printf
72、("是否繼續(xù)搜索商品?(Y/N)");</p><p> fflush(stdin);</p><p> scanf("%c",&ch);</p><p> if(ch == 'N'|| ch == 'n')</p><p><b> {<
73、/b></p><p><b> break;</b></p><p><b> }</b></p><p> if(ch ==' Y'|| ch == 'y')</p><p><b> {</b></p><
74、p><b> n = 1;</b></p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p> }while(ch != 'n' &&
75、amp; ch != 'N');</p><p> printf("\n\n\n\n\n\n\t\t\t");</p><p> printf("返回主菜單!\n");</p><p> printf("\t\t\t");</p><p> system(&q
76、uot;pause");</p><p><b> return;</b></p><p><b> }</b></p><p> 2.1.6 第六模塊的實(shí)現(xiàn)及代碼</p><p> 該代碼用于管理者使用的,界面如下:</p><p><b>
77、圖2.9 二級菜單</b></p><p><b> 該代碼如下:</b></p><p> void secondmain()</p><p><b> {</b></p><p><b> int i;</b></p><p>&
78、lt;b> do</b></p><p><b> {</b></p><p> system("cls");</p><p> printf("\n\n\n\n\n\n\n");</p><p> printf("************
79、******************管理維護(hù)子菜單************************************\n\n");</p><p> printf(" ┏━━━━━━━━━━━━━━━━━━━┓\n");</p><p> printf(" ┃
80、 1.輸入全部商品 ┃\n");</p><p> printf(" ┃ 2.增加商品 ┃\n");</p><p> printf(" ┃ 3.刪除商品
81、 ┃\n");</p><p> printf(" ┃ 4.儲存商品 ┃\n");</p><p> printf(" ┃ 5.儲存訂單 ┃\n");</p>
82、<p> printf(" ┃ 0.返回上一級 ┃\n");</p><p> printf(" ┗━━━━━━━━━━━━━━━━━━━┛\n\n\n");</p><p> printf("********
83、************************************************************************\n\n\n\n\n");</p><p> printf("\n\n\t\t請輸入你所要選擇的功能(0~5): ");</p><p> scanf("%d",&i);
84、 </p><p><b> switch(i)</b></p><p><b> {</b></p><p> case 1: </p><p> system("cls");</p>
85、;<p> jianpanload ();</p><p><b> break;</b></p><p> case 2: </p><p> system("cls");</p><p> addproduct();</p><p>&
86、lt;b> break;</b></p><p> case 3: </p><p> system("cls");</p><p> deleteproduct();</p><p><b> break;</b></p><p>
87、 case 4: </p><p> system("cls");</p><p> saveproduct();</p><p><b> break;</b></p><p> case 5: </p><p> system(&q
88、uot;cls");</p><p> savedinggou();</p><p><b> break;</b></p><p> case 0: </p><p> system("cls");</p>&
89、lt;p> return ; </p><p><b> }</b></p><p> }while(1);</p><p> printf("\t\t\t\t");</p><p> system("pause&q
90、uot;);</p><p> system("cls");</p><p><b> return;</b></p><p> }該代碼用于商品信息文件的建立生成,存儲商品信息和訂單。</p><p> 2.2 軟件的數(shù)據(jù)(結(jié)構(gòu))設(shè)計(jì)</p><p> 先定義全局變
91、量用于控制商品數(shù)量和訂單數(shù)量如下:</p><p> #include <stdio.h></p><p> #include <windows.h></p><p> #include <string.h></p><p> #include <assert.h></p>
92、<p> #include <stdlib.h></p><p> int bgnumber = 023; //客戶號</p><p> int inumber = 0; //商品量的統(tǒng)計(jì)</p><p> int ibuy = 0; //訂單的統(tǒng)計(jì)</
93、p><p> void secondmain();//管理維護(hù)子菜單</p><p> void jianpanload(); //輸入商品</p><p> void scanproduct(); //瀏覽商品</p><p> void searchproduct(); //搜索商品</p>&
94、lt;p> void dinggou(); //訂購商品</p><p> void lookdinggou(); //查詢訂單</p><p> void addproduct(); //增加商品</p><p> void deleteproduct(); //刪除商品</p><p> vo
95、id saveproduct(); //保存商品</p><p> void savedinggou(); //保存訂單</p><p> void wenbenload(); //從文本導(dǎo)入商品</p><p> struct product</p><p><b> {</b></p&
96、gt;<p> char name[30];//商品名</p><p> int number;//貨號</p><p> char vender[30];//廠家</p><p> char filed[100];//產(chǎn)地</p><p> int stock;//存量</p>&l
97、t;p> double unvalent;//單價(jià)</p><p><b> };</b></p><p> struct product a[100];</p><p> struct dinggou </p><p><b> {</b></p><p&g
98、t; int bgname; //貨號</p><p> int bmany; //訂購量</p><p> int btime; //日期時(shí)間</p><p> char bname[100]; //客戶名</p><p> char baddress[100]; //客戶地址</p>
99、<p> int bnumber; //客戶號</p><p><b> };</b></p><p> struct dinggou b[100];</p><p> 2.3 軟件的算法設(shè)計(jì)</p><p> 畫出整個(gè)軟件的模塊圖、并對每一個(gè)模塊圖的算法用程序流程圖、功是偽代碼來實(shí)現(xiàn)<
100、/p><p> 現(xiàn)行系統(tǒng)組織結(jié)構(gòu)圖如下:</p><p> 圖2.10主結(jié)構(gòu)模塊示意圖</p><p> 圖2.11 二級結(jié)構(gòu)模塊示意圖</p><p> 圖2.12搜索模塊示意圖</p><p> 2.4 數(shù)據(jù)結(jié)構(gòu)分析</p><p> 使用整型,雙精度,字符型定義變量和函數(shù)。使用結(jié)構(gòu)
101、體,類等概念實(shí)現(xiàn)數(shù)據(jù)存儲。同時(shí)也用這些自定義類型定義了變量和函數(shù)。體現(xiàn)面向?qū)ο笤O(shè)計(jì)的特點(diǎn)。</p><p><b> 軟件的實(shí)現(xiàn)</b></p><p> 軟件涉及到核心功能模塊進(jìn)行設(shè)計(jì)實(shí)現(xiàn),并對關(guān)鍵代碼進(jìn)行分析闡述。</p><p><b> 3 設(shè)計(jì)體會與小結(jié)</b></p><p>
102、在做了課程實(shí)驗(yàn)以后,我對c++的了解更深了,很多知識得到了鞏固,一些不懂的知識也漸漸明了!這其中主要是對類的封裝收獲最多,在其類的封裝過程中,對數(shù)據(jù)的訪問控制也是比較重要,我相信這對以后的學(xué)習(xí)其它面向?qū)ο蟪绦蛟O(shè)計(jì)有很大幫助!</p><p> 作了產(chǎn)品訂購系統(tǒng)程序后,我對類和對象更加熟悉了,作為c++所特有的指針,類和對象在編寫程序過程中運(yùn)用十分廣泛,我必須多加練習(xí)才能達(dá)到一定的水平,類和對象,指針都是非常重要
103、的!</p><p> 在完完整整得做完一個(gè)程序后,我對程序的整體性有了一個(gè)明確的認(rèn)識,做程序必須注意程序前后的聯(lián)系,要具有清晰的思路,程序要具有層次。對整體性的把握至關(guān)重要!</p><p> 學(xué)習(xí)計(jì)算機(jī)語言最重要的就是上機(jī)操作,我深感自己動手能力比較差,在以后學(xué)習(xí)中,還必須多多上機(jī)調(diào)試程序,從實(shí)踐中多積累經(jīng)驗(yàn),為以后工作打下堅(jiān)實(shí)基礎(chǔ)。</p><p><
104、;b> 致謝</b></p><p> 通過此次的課程設(shè)計(jì),我不僅學(xué)會了很多有關(guān)c語言的知識,還學(xué)會了很多道理。心之所向,所向披靡。只要用心,就能克服種種困難,最終有所收獲。</p><p> 此次課程設(shè)計(jì)要感xx老師的輔導(dǎo),以及xx老師所授的c語言知識,還有一些同學(xué)和學(xué)長的指導(dǎo),由于他們的輔導(dǎo)與幫助才完成了課程設(shè)計(jì)。謝謝!</p><p>
105、<b> 參考文獻(xiàn)</b></p><p> [1]何欽銘 顏暉.《C語言程序設(shè)計(jì)》.高等教育出版社.2008年</p><p> [2]譚浩強(qiáng) 張基溫.《C語言程序設(shè)計(jì)教程》.高等教育出版社.2006年</p><p><b> 附錄1</b></p><p> 程序清單及相應(yīng)的注釋:&
106、lt;/p><p> #include <stdio.h></p><p> #include <windows.h></p><p> #include <string.h></p><p> #include <assert.h></p><p> #inclu
107、de <stdlib.h></p><p> int bgnumber = 023; //客戶號</p><p> int inumber = 0; //商品量的統(tǒng)計(jì)</p><p> int ibuy = 0; //訂單的統(tǒng)計(jì)</p><p>
108、void secondmain();//管理維護(hù)子菜單</p><p> void jianpanload(); //輸入商品</p><p> void scanproduct(); //瀏覽商品</p><p> void searchproduct(); //搜索商品</p><p> void din
109、ggou(); //訂購商品</p><p> void lookdinggou(); //查詢訂單</p><p> void addproduct(); //增加商品</p><p> void deleteproduct(); //刪除商品</p><p> void saveproduct();
110、 //保存商品</p><p> void savedinggou(); //保存訂單</p><p> void wenbenload(); //從文本導(dǎo)入商品</p><p> struct product</p><p><b> {</b></p><p> ch
111、ar name[30];//商品名</p><p> int number;//貨號</p><p> char vender[30];//廠家</p><p> char filed[100];//產(chǎn)地</p><p> int stock;//存量</p><p> double un
112、valent;//單價(jià)</p><p><b> };</b></p><p> struct product a[100];</p><p> struct dinggou </p><p><b> {</b></p><p> int bgname;
113、 //貨號</p><p> int bmany; //訂購量</p><p> int btime; //日期時(shí)間</p><p> char bname[100]; //客戶名</p><p> char baddress[100]; //客戶地址</p><p> int b
114、number; //客戶號</p><p><b> };</b></p><p> struct dinggou b[100];</p><p> int main(void)</p><p><b> {</b></p><p><b> int
115、i;</b></p><p> wenbenload();</p><p><b> do</b></p><p><b> {</b></p><p> system("cls");</p><p> printf("\n
116、\n\n\n\n\n");</p><p> printf("**************************歡迎使用商品訂購系統(tǒng)v1.0******************************\n");</p><p> printf(" 作者: 計(jì)科1102 姚茂源\n");
117、</p><p> printf(" ┏━━━━━━━━━━━━━━━━━━━┓\n");</p><p> printf(" ┃ 1.瀏覽商品信息 ┃\n");</p><p> printf("
118、 ┃ 2.訂購商品 ┃\n");</p><p> printf(" ┃ 3.訂單查詢 ┃\n");</p><p> printf(" ┃
119、 4.搜索商品 ┃\n");</p><p> printf(" ┃ 5.管理菜單 ┃\n");</p><p> printf(" ┃ 0.退出系統(tǒng) ┃\
120、n");</p><p> printf(" ┗━━━━━━━━━━━━━━━━━━━┛\n");</p><p> printf("********************************************************************************\n");&l
121、t;/p><p> printf("\n\n\t\t請輸入你的操作(0~5): ");</p><p> scanf("%d",&i); </p><p><b> switch(i)</b></p><p><b> {
122、</b></p><p> case 1: </p><p> system("cls");</p><p> scanproduct();</p><p><b> break;</b></p><p>
123、 case 2: </p><p> system("cls");</p><p> dinggou();</p><p><b> break;</b></p><p> case 3: </p><p>
124、; system("cls");</p><p> lookdinggou();</p><p><b> break;</b></p><p> case 4: </p><p> searchproduct();</p>&
125、lt;p><b> break;</b></p><p> case 5: </p><p> secondmain();</p><p><b> break;</b></p><p> case 0:
126、 //退出系統(tǒng)的界面</p><p> system("cls");</p><p> printf("\n\n\n\n\n\n\n\n");</p><p> printf("\n\n\t\t\t歡迎使用本系統(tǒng)\n\n\n\n\n\t\t\t歡迎再次使用\n");<
127、/p><p> exit(0); //exit用于在程序運(yùn)行的過程中隨時(shí)結(jié)束程序</p><p><b> } </b></p><p> }while(1); </p><p><b> re
128、turn 0;</b></p><p><b> }</b></p><p><b> //瀏覽商品</b></p><p> void scanproduct()</p><p><b> {</b></p><p><b&g
129、t; int i;</b></p><p> system("cls");</p><p> printf("\t\t\t\t\t商品信息列表\n");</p><p> for (i = 0; i < inumber; i++)</p><p><b> {<
130、;/b></p><p> printf("名稱 : %s\n",a[i].name);</p><p> printf("貨號 : %d\n",a[i].number);</p><p> printf("廠家 : %s\n",a[i].vender);</p><p
131、> printf("產(chǎn)地 : %s\n",a[i].filed);</p><p> printf("存量 : %d\n",a[i].stock);</p><p> printf("單價(jià) : %.2lf\n\n\n",a[i].unvalent);</p><p><b>
132、}</b></p><p> printf("\n\n\n\n\n\n\t\t\t");</p><p> printf("返回主菜單\n");</p><p> printf("\t\t\t");</p><p> system("pause"
133、;);</p><p><b> return;</b></p><p><b> }</b></p><p><b> //商品的訂購</b></p><p> void dinggou() </p><p><b> {&l
134、t;/b></p><p><b> char ch;</b></p><p> int i, j, t, c = 1;</p><p> int n = 1;</p><p> int m = 0;</p><p><b> do</b></p>
135、<p><b> {</b></p><p><b> switch(n)</b></p><p><b> {</b></p><p><b> case 1:</b></p><p> system("cls"
136、;);</p><p> printf("\t\t\t\t商品信息列表\n");</p><p> //顯示商品的名稱、貨號信息,以便于訂購</p><p> printf("名稱\t 貨號\t 庫存\n");</p><p> for (i = 0; i < inumber; i++)
137、</p><p><b> {</b></p><p> printf("%s\t %d\t %d\n\n\n",a[i].name,a[i].number,a[i].stock);</p><p><b> }</b></p><p> printf("
138、\n\n\n");</p><p> printf("\t\t\t\t商品訂單\n");</p><p> printf("\n\t\t\t請輸入你的第%d個(gè)訂單信息:\n",m + 1);</p><p> printf("\n\t\t\t貨號:");</p><p&g
139、t; fflush(stdin);</p><p> scanf("%d",&b[ibuy].bgname);</p><p> //檢測是否含有此商品</p><p><b> j = 1;</b></p><p> for (i = 0; i < inumber; i++)
140、</p><p><b> {</b></p><p> if(a[i].number == b[ibuy].bgname)</p><p><b> {</b></p><p><b> j = 0;</b></p><p><b>
141、 t = i;</b></p><p><b> }</b></p><p><b> }</b></p><p> //若有商品繼續(xù)購買項(xiàng)目</p><p> if(j == 0)</p><p><b> {</b></
142、p><p> printf("\n\t\t\t訂購量:");</p><p> fflush(stdin);</p><p> scanf("%d",&b[ibuy].bmany);</p><p> if (a[t].stock >= b[ibuy].bmany)</p>
143、<p><b> {</b></p><p> a[t].stock = a[t].stock - b[ibuy].bmany; //顧客購買后商品的庫存計(jì)算</p><p> printf("\n\t\t\t日期時(shí)間:");</p><p> fflush(stdin);</p&g
144、t;<p> scanf("%d",&b[ibuy].btime);</p><p> printf("\n\t\t\t客戶名:");</p><p> fflush(stdin);</p><p> gets(b[ibuy].bname);</p><p> print
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- c語言課程設(shè)計(jì)-- 商品訂購系統(tǒng)設(shè)計(jì)
- c課程設(shè)計(jì)報(bào)告-- c語言程序設(shè)計(jì)
- c語言程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告
- 《c語言程序設(shè)計(jì)》課程設(shè)計(jì)報(bào)告
- 《c++語言程序設(shè)計(jì)》課程設(shè)計(jì)報(bào)告
- c語言程序設(shè)計(jì)課程設(shè)計(jì)
- c語言程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告—宿舍管理系統(tǒng)
- 《c語言程序設(shè)計(jì)》課程設(shè)計(jì)報(bào)告-景點(diǎn)查詢系統(tǒng)
- 《c語言程序設(shè)計(jì)》課程設(shè)計(jì)報(bào)告-招生信息查詢系統(tǒng)
- 系統(tǒng)軟件程序設(shè)計(jì)報(bào)告(linux下c語言程序課程設(shè)計(jì)報(bào)告)
- c語言商品訂購系統(tǒng)設(shè)計(jì)
- c語言程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告----學(xué)生信息管理系統(tǒng)
- c語言程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告--職工信息管理系統(tǒng)
- 《程序設(shè)計(jì)語言(c++)》課程設(shè)計(jì)
- c語言程序設(shè)計(jì)課程設(shè)計(jì)(論文)-迷宮
- 《c語言程序設(shè)計(jì)》課程設(shè)計(jì)推箱子
- 《c語言程序設(shè)計(jì)》課程設(shè)計(jì)指導(dǎo)手冊()
- c語言程序設(shè)計(jì)課程設(shè)計(jì)---設(shè)計(jì)比賽評分系統(tǒng)
- 《高級語言程序設(shè)計(jì)》課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)報(bào)告-- linux c 程序設(shè)計(jì)
評論
0/150
提交評論