




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、西安郵電大學高級語言課程設計報告題目: 超市管理系統院系名稱:理學院專業名稱: 應用物理學班 級: 1301 學生姓名: 王松學號(8位): 07132022指導教師: 王西龍設計起止時間:2014年06月19日2014年06月27日1:程序模型2:原函數概況1:創建函數void start(); /*啟動界面*/void input(); /*商品數據信息輸入函數*/void change(); /*商品數據信息修改函數*/void dele(); /*給定指定商品名稱,刪除商品信息*/void output(); /*商品信息輸出*/void search(); /*商品信息查找*/voi
2、d mima();/*密碼程序*/void colour();/顏色選擇void huanying();2:商品信息錄入input()3:商品信息的修改Change()4:商品信息的刪除Dele()5:商品信息的查詢Seaerch()6:系統顏色選擇Colour()7:退出系統3:詳細設計過程1:結構體變量的定義struct MarketGoods /*存數商品信息的結構體*/ char goods_id30; /*商品編號*/ char goods_name30; /*商品名稱*/double goods_price; /*商品價格*/double goods_discount;/*商品折扣
3、*/int goods_amount;/*商品總數目*/int goods_remain;/*商品剩余數目*/goodsCOUNT;int count=0; /*全局變量,用于保存實際上有多少個商品*/2:歡迎界面void huanying()printf("t333333333333333333333333333333n"); printf("t3 歡迎使用 3n"); printf("t3 3n"); printf("t3 3n"); printf("t3 超市管理系統 3n"); prin
4、tf("t3 3n"); printf("t3 3n"); printf("t3 444444 3n"); printf("t3 3n"); printf("t3 555555555 3n"); printf("t3 3n");printf("t3333333333333333333333333333333n");3:密碼登陸void mima()/char pass6='1','2','3','4&
5、#39;,'5','6'/*假設密碼長度是6*/ char pass="123456"/*假設密碼長度是6*/ char str6,ch;int i=0;int flag=0;printf(" 請輸入密碼:"); fflush(stdin);for(i=0;i<6;i+) ch=getch(); /*讀取字符,不顯示*/stri=ch;putchar('*'); for(i=0;i<6;i+)if(stri!=passi) flag=1;break;if(flag)printf("n密
6、碼錯誤,登錄失敗!請重新登錄n");mima();else printf("n登錄成功n");getch();system("cls");start();4:系統選擇界面void start() /*啟動菜單*/int chi; printf(" 超市商品管理系統n");printf(" *n"); printf(" *n"); printf(" 1.商品信息的錄入:n");printf(" 2.商品信息的修改:n"); printf("
7、; 3.刪除某個商品信息:n"); printf(" 4.查找商品信息:n"); printf(" 5.顏色選擇:n"); printf(" 0.退出程序n");printf(" *n"); printf(" *n"); printf(" 輸入你的選擇: "); scanf("%d",&chi); /*根據你的選擇執行相應的函數*/if(chi=1) input(); else if(chi=2) change();else if(chi
8、=3) dele();else if(chi=4) search(); else if(chi=5) colour();else if(chi=0) printf("你已經退出超市商品管理系統!謝謝您的使用,再見n"); exit(0);elseprintf(" You Enter The Choice Is Not valid ! n");getch();system("cls");start();void huanying()printf("t333333333333333333333333333333n");
9、 printf("t3 歡迎使用 3n"); printf("t3 3n"); printf("t3 3n"); printf("t3 超市管理系統 3n"); printf("t3 3n"); printf("t3 3n"); printf("t3 444444 3n"); printf("t3 3n"); printf("t3 555555555 3n"); printf("t3 3n");p
10、rintf("t3333333333333333333333333333333n");5:商品信息的錄入void input() /*數據錄入*/FILE *fp;char flag20;fp=fopen("e:/student.txt","wt");doprintf("請輸入你的商品信息:n"); /*錄入商品的信息*/ printf("商品編號:"); scanf("%s",goodscount.goods_id); printf("商品名字:");
11、scanf("%s",goodscount.goods_name); printf("商品價格:"); scanf("%lf",&goodscount.goods_price); printf("商品折扣:"); scanf("%lf",&goodscount.goods_discount); printf("商品總數目:"); scanf("%d",&goodscount.goods_amount); printf("商
12、品剩余數目:"); scanf("%d",&goodscount.goods_remain); count+; /*存數的商品數加一*/ printf("是否繼續輸入數據 y是 n否 : "); /*是否還想繼續輸入數據*/ scanf("%s",flag); while(strcmp(flag,"y")=0|strcmp(flag,"Y")=0);fwrite(&goods,sizeof(struct MarketGoods),count,fp);fclose(fp)
13、;output(); /*調用顯示商品數據*/getch();system("cls");start();6:商品信息的修改void change() /*數據修改*/ FILE *fp;int i,m=0;char ch20,a20;fp=fopen("e:/student.txt","rt");while(fread(&goodsm,sizeof(struct MarketGoods),1,fp)!=NULL)m+;fclose(fp);printf("nyou sure want change goodsInf
14、or y/n): ");/*根據商品的id來修改數據*/ scanf("%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("nenter you want change goods_id:"); scanf("%s",a); for(i=0;i<count;i+) if(strcmp(goodsi.goods_id,a)=0) printf("nyou sure want change goods name(y/
15、n): "); scanf("%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("nname:");scanf("%s",goodsi.goods_name); printf("nyou sure want change goods price(y/n): "); scanf("%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y
16、")=0) printf("nprice");scanf("%lf",&goodsi.goods_price); printf("nyou sure want goods discount(y/n): "); scanf("%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("ndiscount"); scanf("%lf",&goodsi.goods_d
17、iscount); printf("nyou sure want goods amount(y/n): "); scanf("%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("namount");scanf("%d",&goodsi.goods_amount);printf("nyou sure want goods remain(y/n): "); scanf("%s"
18、;,ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("nremain"); scanf("%d",&goodsi.goods_remain); fwrite(&goods,sizeof(struct MarketGoods),count,fp);fclose(fp);output();getch();system("cls");start();7:商品信息的刪除void dele() /*數據刪除*/FILE *fp;int i
19、,m=0,j;char ch20,c20;fp=fopen("e:/student.txt","rt");while(fread(&goodsm,sizeof(struct MarketGoods),1,fp)!=NULL)printf("%s",goodsm.goods_id);m+;fclose(fp);printf("nenter you want delete name :n"); /*根據商品的名稱來刪除數據*/ printf("name:"); scanf("%s&
20、quot;,c); for(i=0;i<count;i+) if(strcmp(c,goodsi.goods_name)=0) break; /*找到,即跳出循環*/ for(j=i;j<count-1;j+) goodsj=goodsj+1; printf("tttyou had delete %sn",c); count-;fp=fopen("e:/student.txt","wt");fwrite(&goods,sizeof(struct MarketGoods),count,fp);fclose(fp);o
21、utput();getch();system("cls");start();8:商品信息查詢void search() /*數據查找*/FILE *fp;int i,m=0;char a20;fp=fopen("e:/student.txt","rt");while(fread(&goodsm,sizeof(struct MarketGoods),1,fp)!=NULL)printf("%s",goodsm.goods_name);m+;printf("nenter you want look n
22、ame:"); /*根據商品的名稱來查找數據*/ scanf("%s",a); for(i=0;i<m;i+)if(strcmp(goodsi.goods_name,a)=0) printf("%s %s %lf %lf %d %d n",goodsi.goods_id,goodsi.goods_name,goodsi.goods_price,goodsi.goods_discount,goodsi.goods_amount,goodsi.goods_remain);getch();system("cls");star
23、t();9:系統顏色選擇void colour() int a; printf("nntt選擇以下方案n");printf("nntt1*紅底黑字n");printf("nntt2*白底黑子");printf("nntt3*黑底紅字");printf("nntt4*綠底藍字");printf("nntt5*黃底藍字");printf("nntt6*系統默認");printf("nntttt請挑選您喜歡的顏色<1-6>.");
24、scanf("%d",&a);switch(a)case 1:system("color 40"); break;case 2:system("color 70"); break;case 3:system("color 04"); break;case 4:system("color 21"); break;case 5:system("color 65"); break;case 6:system("color la"); break;defa
25、ult:printf("nntttt輸入無效");getch();colour(); start();10:商品信息輸出void output() /*數據輸出*/ FILE *fp; int i,m=0;fp=fopen("e:/student.txt","rt");while(fread(&goodsm,sizeof(struct MarketGoods),1,fp)!=NULL)m+; fclose(fp);printf(" 編號 名稱 價格 折扣 總數目 剩余數目 n");for(i=0;i<
26、m;i+)printf("%s %s %lf %lf %10d %10d n",goodsi.goods_id,goodsi.goods_name,goodsi.goods_price,goodsi.goods_discount,goodsi.goods_amount,goodsi.goods_remain);getch();system("cls");start();11:退出系統 void start() /*啟動菜單*/int chi; printf(" 超市商品管理系統n");printf(" *n");
27、printf(" *n"); printf(" 1.商品信息的錄入:n");printf(" 2.商品信息的修改:n"); printf(" 3.刪除某個商品信息:n"); printf(" 4.查找商品信息:n"); printf(" 5.顏色選擇:n"); printf(" 0.退出程序n");printf(" *n"); printf(" *n"); printf(" 輸入你的選擇: ");
28、 scanf("%d",&chi); /*根據你的選擇執行相應的函數*/if(chi=1) input(); else if(chi=2) change();else if(chi=3) dele();else if(chi=4) search(); else if(chi=5) colour();else if(chi=0) printf("你已經退出超市商品管理系統!謝謝您的使用,再見n"); exit(0);4:調試分析調試過程中,會有很多的錯誤。語句和函數的運用不到位,還存在許多的小錯誤。5:測試結果通過我想同學求助,向老師咨詢,查找書籍
29、,在網絡上查找,最終使得程序順利運行。1:歡迎界面2:密碼輸入3:系統菜單選擇界面4:商品信息錄入及保存5:商品信息的修改6:商品信息的刪除及剩余物品記錄7:物品信息的查詢8:商品信息輸出9:系統環境顏色的選擇10:退出系統 課程設計總結上學期學習了C語言,所以對于C語言有了初步和基礎的認識。這次做程序設計,許多的程序過程都是通過咨詢老師,同學,查詢網絡,查找書籍做的。感到自己的C語言知識還是很欠缺。程序中許多都是自己設計的簡單的語句,很少有精彩的部分,但是很知足,畢竟是自己第一次做,感覺挺好。但是總結下來,自己可是漏洞百出。通過一周多的實習設計,使我對于C語言有了更深刻,更多的了解,也是我認
30、識到C語言的難度,但是,我又感覺到了這門課程的樂趣,看著自己的成果一天天出現,那種喜悅是不可言語的。過程中,我發現自己的基礎知識薄弱,英語很多不認識,知識做的過程中還要上查詢英語方面的知識,很是費事。還有就是有些概念很模糊,但是通過這次實習,我對于C語言有了新的認識。在這一周時間里,經過不斷的與同學和老師的討論,是我的C語言水平有了很大的提高。此次我還感覺到,C語言是一門實用性很強的課程。其實真正的程序過程就是頭文件,主函數,模塊函數。這些東西的組合才構成了一個完整的函數體系。雖然說只有這幾項,但是就是這簡單的幾項,在一起通過邏輯,順序,等關系羅列開來,構成了復雜的函數體。我就是在程序作業工程
31、中老是在各種邏輯順序中迷糊,所以浪費了很長時間。這次的實驗設計,讓我對C語言有了很大的興趣。我相信我還會去自學的,因為我知道只是一門可以武裝子的課程。相信,通過這次的學習,還有以后的學習,會是我的C語言有很大的提高。源程序#include <stdio.h> #include <stdlib.h>#include <conio.h>#include <string.h>#define COUNT 30 /*聲明商品的種類為30中*/#define N 30void start(); /*啟動界面*/void input(); /*商品數據信息輸入
32、函數*/void change(); /*商品數據信息修改函數*/void dele(); /*給定指定商品名稱,刪除商品信息*/void output(); /*商品信息輸出*/void search(); /*商品信息查找*/void mima();/*密碼程序*/void colour();/顏色選擇void huanying();void paixu();struct MarketGoods /*存數商品信息的結構體*/ char goods_id30; /*商品編號*/ char goods_name30; /*商品名稱*/double goods_price; /*商品價格*/do
33、uble goods_discount;/*商品折扣*/int goods_amount;/*商品總數目*/int goods_remain;/*商品剩余數目*/goodsCOUNT;int count=0; /*全局變量,用于保存實際上有多少個商品*/void main() /*主函數*/ huanying();mima();start(); void start() /*啟動菜單*/int chi; printf(" 超市商品管理系統n");printf(" *n"); printf(" *n"); printf(" 1
34、.商品信息錄入:n");printf(" 2.商品信息修改:n"); printf(" 3.商品信息刪除:n"); printf(" 4.商品信息查找:n"); printf(" 5.系統顏色選擇:n"); printf(" 6.商品信息輸出:n"); printf(" 0.退出程序n");printf(" *n"); printf(" *n"); printf(" 輸入你的選擇: "); scanf(&q
35、uot;%d",&chi); /*根據你的選擇執行相應的函數*/if(chi=1) input(); else if(chi=2) change();else if(chi=3) dele();else if(chi=4) search(); else if(chi=5) colour(); else if(chi=6) output();else if(chi=0) printf("你已經退出超市商品管理系統!謝謝您的使用,再見n"); exit(0);elseprintf(" You Enter The Choice Is Not valid
36、 ! n");getch();system("cls");start();void huanying()printf("t333333333333333333333333333333n"); printf("t3 歡迎使用 3n"); printf("t3 3n"); printf("t3 3n"); printf("t3 超市管理系統 3n"); printf("t3 3n"); printf("t3 3n"); print
37、f("t3 444444 3n"); printf("t3 3n"); printf("t3 555555555 3n"); printf("t3 3n");printf("t3333333333333333333333333333333n");void mima()/char pass6='1','2','3','4','5','6'/*假設密碼長度是6*/ char pass="1234
38、56"/*假設密碼長度是6*/ char str6,ch;int i=0;int flag=0;printf(" 請輸入密碼:"); fflush(stdin);for(i=0;i<6;i+) ch=getch(); /*讀取字符,不顯示*/stri=ch;putchar('*'); for(i=0;i<6;i+)if(stri!=passi) flag=1;break;if(flag)printf("n密碼錯誤,登錄失敗!請重新登錄n");mima();else printf("n登錄成功n")
39、;getch();system("cls");start();void input() /*數據錄入*/FILE *fp;char flag20;fp=fopen("e:/student.txt","wt");doprintf("請輸入你的商品信息:n"); /*錄入商品的信息*/ printf("商品編號:"); scanf("%s",goodscount.goods_id); printf("商品名字:"); scanf("%s",
40、goodscount.goods_name); printf("商品價格:"); scanf("%lf",&goodscount.goods_price); printf("商品折扣:"); scanf("%lf",&goodscount.goods_discount); printf("商品總數目:"); scanf("%d",&goodscount.goods_amount); printf("商品剩余數目:"); scanf(
41、"%d",&goodscount.goods_remain); count+; /*存數的商品數加一*/ printf("是否繼續輸入數據 y是 n否 : "); /*是否還想繼續輸入數據*/ scanf("%s",flag); while(strcmp(flag,"y")=0|strcmp(flag,"Y")=0);fwrite(&goods,sizeof(struct MarketGoods),count,fp);fclose(fp);output(); /*調用顯示商品數據
42、*/getch();system("cls");start();void paixu()FILE *fp; int m=0;int u,j,t;double dN+1;fp=fopen("e:/student.txt","rt");while(fread(&goodsm,sizeof(struct MarketGoods),1,fp)!=NULL)m+; fclose(fp); dN+1=goodscount.goods_price; for(u=1;u<N;u+) for(j=u+1;j<=N;j+) if(du
43、<dj)t=du;du=dj;dj=t; printf("商品信息:n"); printf(" 編號 名稱 價格 折扣 總數目 剩余數目 n"); for(u=1;u<=N;u+) printf("%4d",du);void change() /*數據修改*/ FILE *fp;int i,m=0;char ch20,a20;fp=fopen("e:/student.txt","rt");while(fread(&goodsm,sizeof(struct MarketGood
44、s),1,fp)!=NULL)m+;fclose(fp);printf("nyou sure want change goodsInfor y/n): ");/*根據商品的id來修改數據*/ scanf("%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("nenter you want change goods_id:"); scanf("%s",a); for(i=0;i<count;i+) if(strcm
45、p(goodsi.goods_id,a)=0) printf("nyou sure want change goods name(y/n): "); scanf("%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("nname:");scanf("%s",goodsi.goods_name); printf("nyou sure want change goods price(y/n): "); s
46、canf("%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("nprice");scanf("%lf",&goodsi.goods_price); printf("nyou sure want goods discount(y/n): "); scanf("%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0)
47、printf("ndiscount"); scanf("%lf",&goodsi.goods_discount); printf("nyou sure want goods amount(y/n): "); scanf("%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("namount");scanf("%d",&goodsi.goods_amount);pri
48、ntf("nyou sure want goods remain(y/n): "); scanf("%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("nremain"); scanf("%d",&goodsi.goods_remain); fwrite(&goods,sizeof(struct MarketGoods),count,fp);fclose(fp);output();getch();sys
49、tem("cls");start();void dele() /*數據刪除*/FILE *fp;int i,m=0,j;char ch20,c20;fp=fopen("e:/student.txt","rt");while(fread(&goodsm,sizeof(struct MarketGoods),1,fp)!=NULL)printf("%s",goodsm.goods_id);m+;fclose(fp);printf("nenter you want delete name :n"
50、;); /*根據商品的名稱來刪除數據*/ printf("name:"); scanf("%s",c); for(i=0;i<count;i+) if(strcmp(c,goodsi.goods_name)=0) break; /*找到,即跳出循環*/ for(j=i;j<count-1;j+) goodsj=goodsj+1; printf("tttyou had delete %sn",c); count-;fp=fopen("e:/student.txt","wt");fwrite(&goods,sizeof(struct MarketGoods),count,fp);fclose(fp);output()
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 江蘇省江陰市高中生物 第五章 基因突變及其他變異 5.2 染色體變異教學設計 新人教版必修2
- 帶你了解2025年證券從業資格試題及答案
- 小學數學七 美麗的街景-兩位數乘兩位數一等獎教案及反思
- 2025年股票市場技術分析方法試題及答案
- 2025至2030年中國氣動橢圓型卷邊機數據監測研究報告
- 股票投資趨勢理論相關試題及答案
- 六年級語文下冊 第一單元 4 藏戲配套教學設計 新人教版
- 讓金融學習更輕松特許金融分析師考試試題及答案
- 注冊會計師考試2025年金融衍生工具的會計處理及風險分析試題及答案
- 2024-2025學年湖北省省實驗學校、武漢一中等六校高三考前熱身語文試卷含解析
- 學生宿舍帶班領導及值班教師巡查登記表
- GB/T 15103-2008林用絞盤機
- 議論要有針對性 課件
- 11470國際勞務合作和海外就業第5章
- 奧本海姆《信號與系統(第二版)》習題參考答案
- 卵巢惡性腫瘤腹腔鏡手術課件
- 市政道路檢測專項方案
- 《思想道德與法治》 課件 第四章 明確價值要求 踐行價值準則
- 瀝青路面精細化施工質量控制及驗收標準課件
- XX縣“四好”農村公路提升工程可行性研究報告
- 高考數學你真的掌握了嗎(最新)
評論
0/150
提交評論