




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、文檔來(lái)源為 :從網(wǎng)絡(luò)收集整理 .word 版本可編輯 .歡迎下載支持 .10 文檔來(lái)源為 :從網(wǎng)絡(luò)收集整理 .word 版本可編輯 .C語(yǔ)言課程設(shè)計(jì)商品銷售信息管理系統(tǒng)#include#include#include#includestruct productint num;char productname20;float price;char place30;int storage; struct product *next;*head,*p1,*p2;struct timeint year;int month;int day;struct sellint ID;char customern
2、ame20;int num;int count;char date10;struct sell * next1;*head1; /*/ 定義商品數(shù)據(jù)結(jié)構(gòu)/ 商品編號(hào) / 商品名稱/ 商品售價(jià)/ 商品產(chǎn)地/ 商品庫(kù)存/ 定義主結(jié)構(gòu)體數(shù)組和備用結(jié)構(gòu)體數(shù)組及指針/ 定義時(shí)間結(jié)構(gòu)體/ 定義銷售數(shù)據(jù)結(jié)構(gòu)/ 顧客代碼/ 顧客姓名/ 商品編號(hào)/ 銷售數(shù)量/ 日期/定義頭指針head,緩沖指針p1,以及尾指針p2 函數(shù)申明 */void Enter_productmessage();void Creat();void Search_num();void Search_customername();void P
3、rintf_customername();void Search_date();void Save_product();void Save_customername();void Exit();/*int select()/ 導(dǎo)入商品信息/ 輸入銷售記錄/ 按編號(hào)查詢銷售歷史/ 按顧客姓名查詢購(gòu)買歷史/ 顯示顧客信息/ 計(jì)算時(shí)間段內(nèi)銷售總額/ 保存銷售信息/ 保存顧客信息/ 退出程序主菜單 */int c;printf(tt* 歡迎使用商品銷售管理程序 *n);printf(tt T1123-5 班 胡 軍 一分耕耘 一分收獲 n); printf(n n);printf(n);printf(
4、tt*n);printf(tt*歡迎使用商品銷售管理系統(tǒng)*n);printf(tt*n);printf(tt*1:導(dǎo)入商品信息*n);printf(tt*2:輸入銷售記錄*n);printf(tt*3:按編號(hào)查詢銷售歷史*n);printf(tt*4: 按顧客姓名查詢購(gòu)買歷史*n);printf(tt*5:計(jì)算時(shí)段內(nèi)各銷售總額*n);printf(tt*6:顯示顧客信息*n);printf(tt*7:保存銷售信息*n);printf(tt*8:保存顧客信息*n);printf(tt*0:退出*n);printf(tt*n);printf(n n);printf(tt 請(qǐng)輸入您的選擇 (08的整
5、數(shù) ): );scanf(%d,&c);return c;*主函數(shù) *int main()for(;)switch(select()case 1:system(cls);Enter_productmessage();break;case 2:system(cls);Creat();break;case 3:system(cls);Search_num();break;case 4:system(cls);Search_customername();break;case 5:system(cls);Search_date();break;case 6:system(cls);Printf_cus
6、tomername();break;case 7:system(cls);Save_product();break;case 8:system(cls);Save_customername();break;case 0:system(cls);Exit();break;default : system(cls);printf(nnnnnn);printf(tt*n);printf(tt* 輸入錯(cuò)誤! 請(qǐng)重新輸入您的選擇(08 的整數(shù))printf(tt*請(qǐng) 按 Enter 鍵 返 回 !*n);*n);*n);getchar();getchar();system(cls);return 0;p
7、rintf(tt*/*/int judgech(char *a) / 判斷是否為漢字int i,flag;for(i=0;ai!=0;i+)if(ai=0)flag=0;break;elseflag=1;return flag;int judgedate(char date10) / 判斷日期是否合法int i,year,month,day,s1=0;/ 日期格式輸入正確則s1=1,否則 s1=0for(i=0;i0&day0&day0&day0&daynext=p1;p1-next=NULL;p2=p1;fscanf(fp,%d%s%f%s%d,&p2 -num,p2 -productnam
8、e,&p2 -price,p2 -place,&p2 -storage );while(k=1)if(p2 -num10|p2 -numnum);k=1;else k=0;while(j=1)if(judgech(p2 -productname)=0)printf(tt第%d個(gè)商品名稱錯(cuò)誤!請(qǐng)重新輸入(漢字):,i+1); rewind(stdin);scanf(%s, p2 -productname) ; j=1;else j=0;while(o=1)if(p2-price0):,i+1); rewind(stdin);scanf(%f,&p2 -price);o=1;else o=0; w
9、hile(c=1) if(judgech(p2 -place)=0) printf(tt第%d個(gè)商品產(chǎn)地格式錯(cuò)誤!請(qǐng)重新輸入(漢字):,i+1); rewind(stdin);scanf(%s,p2-place);c=0;else c=0;while(v=1)if(p2 -storage!=1000)printf(t*n);printf(tt第%d個(gè)商品數(shù)量錯(cuò)誤!請(qǐng)輸入1000:,i+1);rewind(stdin);scanf(%d,&p2 -storage); v=1;else v=0;printf(t% -12d%-15s %-15.2f%-15s%-12dn,p2-num,p2-pro
10、ductname,p2 -price,p2-pla ce,p2-storage);fclose(fp);void comp()FILE *fp;int i=0,n,k=1,m=1,c=1,l=1,d=1;char filename20,a;printf(t 請(qǐng)輸入商品信息保存路徑 :);rewind(stdin);gets(filename);p1=p2=head=(struct product*)malloc(sizeof(struct product);if(fp=fopen(filename,a+)=NULL)printf(tt* *n);*n);printf(tt*不能打開(kāi)文件 !請(qǐng)檢
11、查文件路徑 !printf(tt* *n);getchar();system(cls);Enter_productmessage(); printf(nnn);printf(tt*n);printf(tt* 若輸入路徑與從文件導(dǎo)入商品信息路徑相同 !*n); printf(tt* 并已導(dǎo)入十個(gè)商品信息,請(qǐng)不要再導(dǎo)入 !*n);printf(tt* 注意商品編號(hào)不要和已導(dǎo)入的編碼重復(fù) !*n);printf(tt*n);printf(nnn);getchar();system(cls);printf(t 已從文件導(dǎo)入的個(gè)數(shù)和要輸入的個(gè)數(shù)和不超過(guò)十 printf(t 請(qǐng)輸入要導(dǎo)入的銷售記錄個(gè)數(shù) :
12、); scanf(%d,&n);if(n0)dop1=(struct product*)malloc(sizeof(struct product); p2-next=p1;p1-next=NULL;!nn);p2=p1;printf(*printf(編號(hào)(整數(shù) )名稱 (漢字)價(jià)格 (數(shù)字)商品信息產(chǎn)地(漢字 ) 庫(kù)存數(shù)量 n);scanf(%d%s%f%s%d,&p2-num,p2 -productname,&p2 -price,p2 -place,&p2 -storage); while(k=1)if(p2 -num10|p2 -numnum);k=1;else k=0; while(m=
13、1) if(judgech(p2 -productname)=0) printf(tt 商品名稱錯(cuò)誤 !請(qǐng)重新輸入 (漢字 ):); rewind(stdin); scanf(%s,p2-productname); m=1;else m=0; while(l=1) if(p2 -price0):);rewind(stdin);scanf(%f,&p2 -price); l=1;else l=0;while(c=1)if(judgech(p2 -place)=0)printf(tt 商品產(chǎn)地格式錯(cuò)誤 !請(qǐng)重新輸入 (漢字 ):); rewind(stdin);scanf(%s,p2-place)
14、;c=1;else c=0;while(d=1)if(p2 -storage!=1000)printf(t*n);printf(tt 商品數(shù)量錯(cuò)誤 !請(qǐng)輸入 1000:);rewind(stdin);scanf(%d,&p2 -storage);d=1;else d=0;p2=head-next;fprintf(fp,n% -6d%-6s%-6.2f%-6s%-6dn,p2 -num,p2 -productname,p2 -price,p2 -place, p2-storage);printf(n% -6d%-6s%-6.2f%-6s%-6dn,p2 -num,p2 -productname,
15、p2 -price,p2 -place,p2 - storage);printf(tt 是否繼續(xù)輸入信息 (Y/N)?n);getchar(); a=getchar();while(a=Y|a=y);fclose(fp); / 關(guān)閉文件夾if(n=0)printf(tt 不從鍵盤輸入入信息 !);getchar();getchar(); system(cls); fclose(fp); / 關(guān)閉文件夾void Enter_productmessage() / 導(dǎo)入銷售信息 int a;printf(t*n);printf(t* 2: 通過(guò)鍵盤輸入printf(t*n);*n);*n);*n);
16、printf(t* 請(qǐng)輸入 10 種產(chǎn)品的信息 -編號(hào)、名稱、價(jià)格、產(chǎn)地、數(shù)量printf(t*1:通過(guò)文件導(dǎo)入 (推薦 )!printf(t 請(qǐng)輸入您的選擇 (1 或 2): );scanf(%d,&a);getchar(); system(cls);if(a!=1&a!=2)printf(tt 輸入錯(cuò)誤 !請(qǐng)重新輸入您的選擇 (1或 2):); scanf(%d,&a);switch(a)case 1:system(cls); file();break;case 2:system(cls); comp();break; printf(H*n);printf(t*n);*n);printf(
17、t*n);printf(t* 數(shù)據(jù)類信息操作成功 !請(qǐng)按 Enter 鍵繼續(xù) !getchar();getchar(); system(cls);/ 輸入銷售信息函數(shù)void Creat()int i=0,k=1,code;char a;struct sell *p3,*p4; srand(0); code=1+rand()%90; 文檔來(lái)源為 :從網(wǎng)絡(luò)收集整理 .word 版本可編輯 .歡迎下載支持 .p3=p4=head1=(struct sell *)malloc(sizeof(struct sell); p3=head1;printf(tt 請(qǐng)輸入銷售記錄 :n); / 提示輸入記錄
18、printf( n);dop3=(struct sell *)malloc(sizeof(struct sell); p4-next1=p3;p3-next1=NULL; p4=p3;銷售日期/ 輸 入printf( 顧客姓名 (漢字 ) 商品編號(hào) (1-10 的整數(shù) ) 銷售數(shù)量 ( 數(shù)字 ) (YYYY-MM -DD)n);printf( n);scanf(%s%d%d%s,p4-customername,&p4 -num,&p4 -count,p4 -date); 記錄doif(judgech(p4 -customername)=0)printf(t*n);13 文檔來(lái)源為 :從網(wǎng)絡(luò)收集
19、整理 .word 版本可編輯 .printf(tt 顧客名字輸入錯(cuò) !請(qǐng)重新輸入顧客名字 (漢字 ):);scanf(%s,p4-customername);rewind(stdin);k=1; elsek=0;while(k=1); do if(p4 -num10|p4 -numnum);rewind(stdin);k=1;else k=0;while(k=1); doif(p4 -count1000|p4 -countcount);rewind(stdin);k=1;else k=0;while(k=1);doif(judgedate(p4 -date)!=1) printf(t*n);p
20、rintf(t 輸入日期不合法 !請(qǐng)重新輸入 (YYYY-MM -DD):);scanf(%s,p4-date);rewind(stdin);k=1;else k=0;while(k=1); p4-ID=code+i; i+;printf(nn);printf( 是否繼續(xù)輸入銷售記錄 (Y/N)?n); getchar();a=getchar();while(a=Y|a=y);system(cls);printf(nnnn);printf(t*n);printf(t* 銷售信息輸入成功 ! 按 Enter 鍵繼續(xù) !*n);printf(t* *getchar();getchar(); sys
21、tem(cls); return;void Search_num() / 根據(jù)產(chǎn)品編號(hào)查詢產(chǎn)品的銷售歷史 int num,flag=1,i=0;struct sell *p3;struct product *p;printf(tt 請(qǐng)輸入商品編號(hào) (1-10 的整數(shù) ):); scanf(%d,&num);getchar();system(cls);printf( 顧客姓名 商品編號(hào) 銷售數(shù)量 銷售總額銷售日期 n);printf(n);文檔來(lái)源為 :從網(wǎng)絡(luò)收集整理 .word 版本可編輯 .歡迎下載支持p3=head1;p=head;while(p3!=NULL)if(p3 -num=num
22、)p=head;while(p!=NULL)if(p-num=num) break;elsep=p -next; printf( %-15s%-13d%-13d%-13.2f%-10sn,p3 -customername,p3 -num,p3 -count,p -pric e*p3 -count,p3 -date);flag=0;p3=p3-next1; if(flag=1)*n);*n);printf(tt *n); printf(tt* 無(wú)此編碼商品銷售記錄 ! 請(qǐng)查實(shí)后再輸入 ! printf(tt* 請(qǐng)按 Enter 鍵返回 !printf(tt *n); getchar();syst
23、em(cls);return;n);printf( printf(tt* *n);printf(tt* 銷售記錄查詢完畢 !請(qǐng)按 Enter 鍵返回 ! *n); printf(tt* *n);getchar();getchar(); system(cls); return;void Search_customername() / 根據(jù)顧客姓名查詢購(gòu)買歷史int k=1,m=0; float a=0;14文檔來(lái)源為 :從網(wǎng)絡(luò)收集整理 .word 版本可編輯文檔來(lái)源為 :從網(wǎng)絡(luò)收集整理 .word 版本可編輯 .歡迎下載支持char name20,b; struct product *p;str
24、uct sell *p3; p3=head1;p=head;printf(tt*n);printf(ttt 請(qǐng)輸入顧客姓名 (漢字 ):);scanf(%s,name);getchar();system(cls);if(head1 -next1=NULL)printf(tt * printf(tt* 銷售記錄為空 !請(qǐng)按 Enter 鍵返回 ! printf(tt *n);getchar(); getchar();system(cls);return ;doif(judgech(name)=0)printf(t*n);15文檔來(lái)源為 :從網(wǎng)絡(luò)收集整理 .word 版本可編輯printf(tt
25、顧客名字輸入錯(cuò) !請(qǐng)重新輸入顧客名字 (漢字 ):);rewind(stdin);scanf(%s,name);rewind(stdin);k=1; elsek=0;while(k=1);if(judgech(name)=1)購(gòu)買日期printf( 顧客姓名 (漢字 ) 顧客代碼 商品編號(hào) 購(gòu)買數(shù)量 購(gòu)買總額(YYYY-MM -DD)n);printf( n);while(m!=1)if(strcmp(name,p3 -customername)=0)m=1;while(p!=NULL)文檔來(lái)源為 :從網(wǎng)絡(luò)收集整理 .word 版本可編輯 .歡迎下載支持 .if(p3 -num=p-num)p
26、rintf(%5s%15d%10d%10d%15.2f%14sn,p3 -customername,p3 -ID,p3-num,p3 -count, p3-count*p - price,p3 -date);break;else p=p-next;else p3=p3-next1;if(p3=NULL)break;if(m=1)n);printf(printf(t*n);printf(t* 查詢完畢 !請(qǐng)按 Enter 鍵返回 !*n);printf(t*n);getchar();system(cls);return;if(m=0)printf(tt *n); printf(tt* 不存在此顧
27、客 ! 請(qǐng)按 Enter 鍵繼續(xù) ! printf(tt *n); printf(tt 是否記錄該顧客銷售記錄 !n);printf(tt 請(qǐng)輸入選擇 (Y/N):); rewind(stdin);b=getchar();*n);if(b=n|b=N)getchar(); system(cls); return;if(b=y|b=Y) getchar(); Creat();void Search_date() / 計(jì)算時(shí)間段內(nèi)各個(gè)商品的銷售總額 int n=0;float temp=0;char a10,b10,c10;struct sell *p3;struct product *p; p3
28、=head1-next1;p=head-next; getchar(); system(cls);if(head1 -next1=NULL)printf(tt * printf(tt* 無(wú)銷售記錄 ! 請(qǐng)按 Enter 鍵返回 ! printf(tt *n);getchar(); system(cls);return ;printf(tt 請(qǐng)輸入開(kāi)始日期 (YYYY-MM -DD):);gets(a);doif(judgedate(a)!=1)printf(tt* *printf(tt 輸入日期不合法 !請(qǐng)重新輸入 (YYYY-MM -DD):);gets(a);system(cls);n=1
29、;elsen=0;while(n=1);printf(tt*n);printf(tt 請(qǐng)輸入結(jié)束日期 (YYYY-MM -DD):);gets(b); system(cls);doif(judgedate(b)!=1) printf(tt* *printf(tt 輸入日期不合法,請(qǐng)重新輸入 (YYYY-MM -DD): gets(b);system(cls);n=1;elsen=0;while(n=1);doif(strcmp(a,p3 -date)date)=0)n=1; break;else p3=p3-next1;if(p3=NULL) break;while(n!=1);while(1
30、) p3=head1 -next1;if(strcmp(a,p3 -date)0&strcmp(b,p3 -date)0)|(strcmp(a,p3 -date) date)0)printf( 時(shí)間斷不包括銷售日期 !);Search_date();getchar();return;else p3=p3-next1; if(p3=NULL) break;if(n=1)printf(tt 銷售記錄如下 :n);printf(tt時(shí)間:%s至sn,a,b);printf(t 商品編號(hào) (1-10 的整數(shù) )商品名 (漢字 )銷售總額n);printf(n n);while(p!=NULL)p3=h
31、ead1-next1;if(p3-num=p-num)temp+=(int)p3 -count*(float)p -price;strcpy(c,p-productname);printf(tt% -20d%-20s%.2fn,p3 -num,c,temp); p=p-next;n)printf(nprintf(tt*n);printf(tt*查詢完畢 ! 請(qǐng)按 Enter 鍵繼續(xù) !*n);printf(tt*n);getchar();getchar(); system(cls); return;void Printf_customername()int n=1;/ 顯示所有顧客的姓名str
32、uct sell *p3; p3=head1-next1; if(p3!=NULL)printf(tt 顧客姓名如下 :n);/ 用來(lái)顯示所有顧客的姓名printf(tt *printf(ttttt 姓名 :n);doprintf(ttttt %sn,p3 p3=p3 -next1;-customername);while(p3!=NULL);printf(tt * printf(tt * printf(tt* 顧客姓名查詢完畢 !請(qǐng)按 Enter 鍵繼續(xù) !printf(tt *n);getchar(); getchar();system(cls); return;elseprintf(tt
33、 * printf(tt* 顧客鏈表為空 ! 沒(méi)有顧客銷售記錄 ! printf(tt *n);getchar(); system(cls); return;void Save_product() FILE *fp;char filename30; struct product *p; struct sell *p3;/ 保存銷售信息記錄/ 定義文件指針p3=head1-next1;p=head-next;printf( 請(qǐng)輸入保存路徑 :n);rewind(stdin); gets(filename);rewind(stdin);if(fp=fopen(filename,a+)=NULL) / 打開(kāi)文件printf(tt*n);printf(tt* 保存文件失敗 !按 Enter 鍵返回 !*n);printf(tt*n);getchar();getchar();system(cls);Save_product(); printf(n n);printf(t 商品編碼 商品品名字 銷售量 剩余庫(kù)存 銷售日期 n); while(p3!=NUL
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 班主任關(guān)于學(xué)習(xí)習(xí)慣的指導(dǎo)計(jì)劃
- 生物學(xué)觀察與記錄技巧計(jì)劃
- 藥學(xué)部臨床溝通能力提升計(jì)劃
- 2025年地面瞄準(zhǔn)設(shè)備、定位定向設(shè)備項(xiàng)目合作計(jì)劃書
- 中國(guó)開(kāi)源軟件行業(yè)發(fā)展環(huán)境、市場(chǎng)運(yùn)行格局及投資前景研究報(bào)告(2025版)
- 2025年微循環(huán)測(cè)試系統(tǒng)項(xiàng)目合作計(jì)劃書
- 2025年動(dòng)葉可調(diào)軸流電站用風(fēng)機(jī)合作協(xié)議書
- 2025年磁共振成像裝置合作協(xié)議書
- 2025年油氣鉆采服務(wù)合作協(xié)議書
- 珠寶行業(yè)商品質(zhì)量免責(zé)合同
- 農(nóng)產(chǎn)品質(zhì)量安全及其檢測(cè)技術(shù)課件
- 外科學(xué)緒論課件
- 2020年中國(guó)人身保險(xiǎn)產(chǎn)品研究報(bào)告
- 安全生產(chǎn)目標(biāo)責(zé)任制考核表
- 常見(jiàn)織帶花鏈的排法和穿棕方法
- 《化工工程制圖》完整教案
- 2023年廣東省中考試卷(語(yǔ)數(shù)英物化史生等共11套)帶答案解析
- DFX工藝設(shè)計(jì)方法介紹
- 洪恩識(shí)字識(shí)字卡(001-100)可直接打印剪裁
- 違反八項(xiàng)規(guī)定問(wèn)題典型案例、法規(guī)依據(jù)和關(guān)注點(diǎn)
- J-STD-033D處理包裝運(yùn)輸和使用濕度回流和過(guò)程敏感設(shè)備
評(píng)論
0/150
提交評(píng)論