版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 《C語(yǔ)言物品管理》</b></p><p><b> 課程設(shè)計(jì)報(bào)告</b></p><p> 2017 年 4月 27 日</p><p> 學(xué)號(hào)</p><p><b> 目錄 </b></p><p>
2、 1設(shè)計(jì)內(nèi)容…………………………………………………2</p><p> 設(shè)計(jì)要求…………………………………………3</p><p> 設(shè)計(jì)提示………………………………………….4</p><p> 2程序設(shè)計(jì)………………………………………………..5</p><p> 2.1 總體設(shè)計(jì)………………………………………..5</p&
3、gt;<p> 2.2 詳細(xì)設(shè)計(jì)……………………………………….5 </p><p> 2.2.1 程序設(shè)計(jì)流程…………………………..6</p><p> 2.2.2 程序設(shè)計(jì)代碼………………………….7 </p><p> 3 主程序設(shè)計(jì)…………………………………………….8</p><p> 3.1 界面設(shè)
4、計(jì)…………………………………………8</p><p> 3.2 文件保存函數(shù)設(shè)計(jì)………………………………8</p><p> 3.3 數(shù)據(jù)讀取函數(shù)設(shè)計(jì)………………………………9</p><p> 3.4 錄入函數(shù)設(shè)計(jì)……………………………………10</p><p> 3.5 進(jìn)貨函數(shù)設(shè)計(jì)…………………………………….10<
5、/p><p> 3.6 刪除函數(shù)設(shè)計(jì)…………………………………….11</p><p> 3.7 查詢函數(shù)設(shè)計(jì)…………………………………..13</p><p> 3.8 修改函數(shù)設(shè)計(jì)…………………………………..12</p><p> 3.9 銷售函數(shù)設(shè)計(jì)…………………………………..14</p><p>
6、 4 程序清單………………………………………………14</p><p> 5 程序運(yùn)行圖……………………………………………..25</p><p> 6 小結(jié)……………………………………………………..26</p><p><b> 1 設(shè)計(jì)內(nèi)容</b></p><p> 設(shè)計(jì)一個(gè)商品進(jìn)銷管理程序,該程序具有
7、以下功能:</p><p> (1) 錄入商品信息;</p><p> (2) 給定商品編號(hào),修改該商品信息;</p><p> (3) 給定商品編號(hào),刪除該商品信息;</p><p> (4) 錄入商品的進(jìn)貨和銷售信息;</p><p> (5) 給定商品編號(hào)或商品名,查看該商品及庫(kù)存信息;</p&g
8、t;<p> (6) 統(tǒng)計(jì)功能:提供一些統(tǒng)計(jì)各類信息的功能。</p><p><b> 1.1、設(shè)計(jì)要求</b></p><p> (1) 按照分析、設(shè)計(jì)、編碼、調(diào)試和測(cè)試過(guò)程完成應(yīng)用程序;</p><p> (2) 學(xué)習(xí)并使用流程圖等工具,并在撰寫報(bào)告中使用;</p><p> (3) 程序的各
9、項(xiàng)功能在程序運(yùn)行時(shí),以菜單形式選擇并執(zhí)行;</p><p> (4) 要求用戶輸入數(shù)據(jù)時(shí),要給出清晰、明確的提示,包括:輸入數(shù)據(jù)的內(nèi)容、格式及其結(jié)束方式等</p><p> (5) 所有的信息存儲(chǔ)在一個(gè)文件或多個(gè)中,并實(shí)現(xiàn)文件讀寫操作。</p><p> (6) 程序中用鏈表存放商品及進(jìn)銷存信息并實(shí)現(xiàn)增刪減功能。</p><p><
10、;b> 1.2、設(shè)計(jì)提示</b></p><p> (1) 提醒事件信息可以設(shè)計(jì)一個(gè)結(jié)構(gòu)體類型</p><p> (2) 自己構(gòu)思并增加的除規(guī)定功能之外的新功能,酌情加分。</p><p> ?。?) 程序中主要變量</p><p> Struct goods *head 結(jié)構(gòu)體指針</p><p
11、><b> Int n,k</b></p><p> struct goods</p><p> {int number;</p><p> char name[20];</p><p> int shumu;</p><p> float jiage;</p>&
12、lt;p> struct goods *next;</p><p><b> };</b></p><p><b> int n,k;</b></p><p> struct goods *head;</p><p><b> 等一些變量。</b></p&
13、gt;<p> (2) 數(shù)據(jù)輸入的形式和輸入值的范圍</p><p><b> 字符不超過(guò)20位</b></p><p><b> 整型變量輸入大于0</b></p><p> 浮點(diǎn)型 變量也大于0</p><p><b> 商品編號(hào)為四位整數(shù)</b>&
14、lt;/p><p> ?。?) 數(shù)據(jù)輸入的形式</p><p> 按程序運(yùn)行的提示操作※</p><p> ?。?) 程序所能達(dá)到的功能及出錯(cuò)處理</p><p> 該程序具有以下功能:</p><p> (1) 錄入商品信息;</p><p> (2) 給定商品編號(hào),修改該商品信息;<
15、;/p><p> (3) 給定商品編號(hào),刪除該商品信息;</p><p> (4) 錄入商品的進(jìn)貨和銷售信息;</p><p> (5) 給定商品編號(hào)或商品名,查看該商品及庫(kù)存信息;</p><p> (6) 統(tǒng)計(jì)功能:提供一些統(tǒng)計(jì)各類信息的功能。</p><p><b> 2 程序設(shè)計(jì)</b&g
16、t;</p><p> 根據(jù)要求首先設(shè)計(jì)一個(gè)結(jié)構(gòu)體類型,設(shè)計(jì)好界面,設(shè)計(jì)好主函數(shù)。 程序各功能通過(guò)調(diào)用子函數(shù)來(lái)實(shí)</p><p> 用switch來(lái)實(shí)現(xiàn)菜單的選擇</p><p> 一切數(shù)據(jù)信息通通存在文件中,并實(shí)現(xiàn)文件讀寫操作。 設(shè)計(jì)子函數(shù)來(lái)實(shí)現(xiàn)查詢,保存,讀取數(shù)據(jù),刪除等操作。</p><p><b> 2.1總體設(shè)計(jì)&
17、lt;/b></p><p> 圖1 系統(tǒng)功能模塊圖</p><p><b> 2.2詳細(xì)設(shè)計(jì)</b></p><p><b> 1. 主函數(shù)</b></p><p> 主函數(shù)設(shè)計(jì)要求簡(jiǎn)潔,只提供部分提示語(yǔ)和函數(shù)的調(diào)用</p><p><b> 【程
18、序】</b></p><p><b> 具體設(shè)計(jì)如下:</b></p><p><b> 結(jié)構(gòu)體設(shè)計(jì)</b></p><p> struct goods</p><p> {int number;</p><p> char name[20]; int
19、shumu;</p><p> float jiage;</p><p> struct goods *next; };</p><p><b> 主函數(shù)設(shè)計(jì)</b></p><p> 2.2.1 程序設(shè)計(jì)流程圖</p><p> 2.2.2 程序設(shè)計(jì)代碼</p><
20、p> void main()</p><p><b> {</b></p><p> void jieman();</p><p> void luru();</p><p> struct goods *shuju();</p><p> void shanchu(struct
21、 goods *head); </p><p> void jinghuo(struct goods *head); </p><p> void xiaoshu(struct goods *head);</p><p> void xiugai(struct goods *head); </p><p> void chaxun(s
22、truct goods *head); </p><p> struct goods *head=NULL;</p><p> int k=0;system("cls");</p><p><b> jieman();</b></p><p> printf("請(qǐng)選擇你要的功能鍵:&
23、quot;); scanf("%d",&k);getchar(); while(k!=0)</p><p><b> {</b></p><p> head=shuju();</p><p><b> switch(k)</b></p><p> {case 1:
24、luru();break;</p><p> case 2:xiugai(head);break;</p><p> case 3:chaxun(head);break;</p><p> case 4:xiaoshu(head);break;</p><p> case 5:jinghuo(head);break;</p>
25、;<p> case 6:shanchu(head);break;</p><p> case 0:exit(0);</p><p> default:printf("please try again!\n");</p><p><b> }</b></p><p><b&
26、gt; jieman();</b></p><p> printf("請(qǐng)選擇你要的功能鍵:");</p><p> scanf("%d",&k);</p><p><b> }</b></p><p><b> }</b><
27、/p><p><b> 3 主程序設(shè)計(jì)</b></p><p><b> 3.1 界面設(shè)計(jì)</b></p><p> void jieman()</p><p><b> {</b></p><p> printf("**********
28、**********************************\n");</p><p> printf("☆☆☆★★★歡迎進(jìn)入商品管理系統(tǒng)★★★☆☆☆\n"); printf("**1 *錄入信息☆☆***************★★★☆☆☆\n");</p><p> printf("**2 *修改信息☆☆*****
29、**********★★★☆☆☆\n"); printf("**3 *查詢信息☆☆***************★★★☆☆☆\n"); printf("**4 *銷售信息☆☆***************★★★☆☆☆\n"); printf("**5 *進(jìn)貨信息☆☆***************★★★☆☆☆\n"); printf("**6 *刪除信息☆☆*
30、**************★★★☆☆☆\n"); printf("**0 *退出系統(tǒng)☆☆***************★★★☆☆☆\n"); printf("☆☆☆★★★歡迎進(jìn)入商品管理系統(tǒng)★★★☆☆☆\n"); printf("********************************************\n"); }</p><p&
31、gt; 3.2文件保存函數(shù)設(shè)計(jì)</p><p> struct goods *baocun(struct goods *head)</p><p><b> {</b></p><p> struct goods *shuju();</p><p> struct goods *p=NULL;</p>
32、;<p> FILE *fp=NULL;</p><p> char ch='\0';</p><p> getchar();</p><p> printf("是否保存到文件?(y/n):");</p><p> ch=getchar();</p><p>
33、 putchar(10);</p><p> if(ch=='y'||ch=='Y')</p><p><b> {</b></p><p> fp=fopen("goods.txt","wb");</p><p><b> p=
34、head;</b></p><p> if((fp==NULL)&&(p==NULL))</p><p><b> {</b></p><p> printf("讀取數(shù)據(jù)失敗!");</p><p><b> exit(0);</b></
35、p><p><b> }</b></p><p> while(p!=NULL)</p><p><b> {</b></p><p> fprintf(fp,"%d\n%s\n%d\n%f\t",p->number,p->name,p->shumu,p-&
36、gt;jiage);</p><p> p=p->next;</p><p><b> }</b></p><p> printf("保存成功!\n");</p><p> fclose(fp);</p><p> return(head);</p>
37、<p><b> }</b></p><p> else if(ch=='n'||ch=='N')</p><p><b> {</b></p><p> printf("信息未保存到文件!\n"); head=shuju();</p>
38、<p> return(head);</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> printf("sorry,please try again(y/n)
39、:"); ch=getchar();</p><p> putchar(10);</p><p><b> }</b></p><p> return(head);</p><p><b> }</b></p><p> 3.3數(shù)據(jù)讀取函數(shù)設(shè)計(jì)</p
40、><p> struct goods *shuju()</p><p><b> {</b></p><p><b> int n=0;</b></p><p><b> FILE *fp;</b></p><p> struct goods *h
41、ead=NULL,*p1,*p2;</p><p> fp=fopen("goods.txt","rb");</p><p> if(fp==NULL)</p><p><b> {</b></p><p> printf("\nsorry,讀取數(shù)據(jù)失敗!\n&q
42、uot;);</p><p><b> exit(0);</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> p1=p2=(st
43、ruct goods *)malloc(LEN);</p><p> fscanf(fp,"%d%s%d%f",&p1->number,p1->name,&p1->shumu,&p1->jiage);</p><p> while(!feof(fp))</p><p><b> {&
44、lt;/b></p><p><b> n++;</b></p><p> if(n==1)head=p1;</p><p> else p2->next=p1;</p><p><b> p2=p1;</b></p><p> p1=(struct g
45、oods *)malloc(LEN);</p><p> fscanf(fp,"%d%s%d%f",&p1->number,p1->name,&p1->shumu,&p1->jiage);</p><p><b> }</b></p><p> p2->next=N
46、ULL;</p><p> fclose(fp);</p><p> return(head);</p><p><b> }</b></p><p><b> }</b></p><p><b> 3.4錄入函數(shù)設(shè)計(jì)</b></p>
47、;<p> void luru()</p><p> {struct goods *shuju();</p><p> struct goods *baocun(struct goods *head); struct goods *p1,*p2,*p3;</p><p> head=shuju();</p><p>&l
48、t;b> p1=head;</b></p><p> p2=(struct goods *)malloc(LEN); printf("請(qǐng)輸入四位編號(hào):");</p><p> scanf("%d",&p2->number);</p><p> printf("請(qǐng)輸入商品名:&q
49、uot;); scanf("%s",p2->name); printf("請(qǐng)輸入商品數(shù)量:"); scanf("%d",&p2->shumu); printf("請(qǐng)輸入商品價(jià)格:"); scanf("%f",&p2->jiage); if(p1==NULL)</p><p><
50、;b> {p1=p2;</b></p><p> p2->next=NULL; baocun(p2);</p><p><b> return;</b></p><p><b> }</b></p><p> while(p1!=NULL) {p3=p1;p1=p1
51、->next;} p3->next=p2;</p><p> p2->next=NULL; baocun(head);</p><p><b> }</b></p><p><b> 3.5進(jìn)貨函數(shù)設(shè)計(jì)</b></p><p> void jinghuo(struct go
52、ods *head)</p><p> {struct goods *baocun(struct goods *head);</p><p><b> int c;</b></p><p><b> int p;</b></p><p> struct goods *p1,*p2;</
53、p><p> system("cls");</p><p> printf("請(qǐng)輸入四位編號(hào):");</p><p> scanf("%d",&p);</p><p><b> p1=head;</b></p><p> w
54、hile(p!=p1->number&&p1->next!=NULL)</p><p><b> {</b></p><p><b> p2=p1;</b></p><p> p1=p1->next;</p><p><b> }</b>
55、;</p><p> if(p==p1->number)</p><p><b> {</b></p><p> printf("\n 商品編號(hào) \t 商品名 \t 數(shù)量 \t 價(jià)格 \n");</p><p> printf("%d\t\t%s\t\t%d\t\t%f\n&q
56、uot;,p1->number,p1->name,p1->shumu,p1->jiage);</p><p> printf("請(qǐng)輸入該商品經(jīng)貨個(gè)數(shù):"); scanf("%d",&c);</p><p> p1->shumu=p1->shumu+c;</p><p> pri
57、ntf("該商品經(jīng)貨個(gè)數(shù):%d\n",p1->shumu); }</p><p> baocun(head);</p><p><b> }</b></p><p><b> 3.6刪除函數(shù)設(shè)計(jì)</b></p><p> void shanchu(struct go
58、ods *head)</p><p> {struct goods *p1,*p2;</p><p> struct goods *baocun(struct goods *head); int p;</p><p> system("cls");</p><p> printf("請(qǐng)輸入四位編號(hào):&qu
59、ot;);</p><p> scanf("%d",&p);</p><p><b> p1=head;</b></p><p> while(p!=p1->number&&p1->next!=NULL)</p><p> {p2=p1;p1=p1->
60、next;}</p><p> if(p==p1->number)</p><p> {printf("\n商品編號(hào) \t商品名 \t 數(shù)量 \t 價(jià)格 \n"); printf(" %d\t\t%s\t\t%d\t\t%.2f\n",p1->number,p1->name,p1->shumu,p1->jiage);
61、</p><p> if(p1==head) head=p1->next;</p><p> else p2->next=p1->next;n=n-1;</p><p><b> }</b></p><p> printf("刪除成功!\n");</p><
62、;p> baocun(head);</p><p><b> }</b></p><p><b> 3.7查詢函數(shù)設(shè)計(jì)</b></p><p> void chaxun(struct goods *head)</p><p><b> {</b></p&g
63、t;<p> int a,c,i=0;</p><p> struct goods *p1,*p2;</p><p> char t[20];</p><p> printf(" 1*商品編號(hào)查詢\n");</p><p> printf(" 2*商品名字查詢\n");</
64、p><p> printf("請(qǐng)選擇你需要的功能鍵\n");</p><p> scanf("%d",&a);</p><p> getchar();</p><p><b> if(a==1)</b></p><p><b> {&
65、lt;/b></p><p> printf("請(qǐng)輸入四位編號(hào):");</p><p> scanf("%d",&c);getchar();</p><p> while(c!=0&&i==0)</p><p><b> {</b></p
66、><p><b> p1=head;</b></p><p> while(c!=p1->number&&p1->next!=NULL)</p><p> {p2=p1;p1=p1->next;}</p><p> if(c==p1->number)</p>&l
67、t;p> {printf("\n 商品編號(hào) \t 名字 \t 數(shù)目 \t 價(jià)格:\n");</p><p> printf(" %d\t %s\t %d\t %.2f\n",p1->number,p1->name,p1->shumu,p1->jiage);i=1;</p><p> else {printf(&qu
68、ot;系統(tǒng)中無(wú)該商品記錄!press enter return!\n");getchar();system("cls");return;}</p><p><b> }</b></p><p><b> }</b></p><p> if(a==2&&i==0)</
69、p><p><b> {</b></p><p> system("cls");printf("請(qǐng)輸入商品名字:");</p><p> scanf("%s",&t);getchar();</p><p> while(strcmp(t,"
70、0")!=0&&i==0)</p><p><b> {</b></p><p><b> p1=head;</b></p><p> if(strcmp(t,p1->name)!=0&&p1->next!=NULL)</p><p>&l
71、t;b> {</b></p><p> p2=p1;p1=p1->next;</p><p><b> }</b></p><p> if(strcmp(t,p1->name)==0)</p><p><b> {</b></p><p&g
72、t; printf("\n 商品編號(hào) \t 名字 \t 數(shù)目 \t 價(jià)格:\n");</p><p> printf(" %d\t %s\t %d\t %f\n",p1->number,p1->name,p1->shumu,p1->jiage);i=1;}</p><p> else {printf("系統(tǒng)中無(wú)
73、該商品記錄!press enterreturn!\n");getchar();system("cls");return;} }</p><p><b> }</b></p><p><b> }</b></p><p><b> 3.8修改函數(shù)設(shè)計(jì)</b></
74、p><p> void xiugai(struct goods *head)</p><p> {struct goods *baocun(struct goods *head); int p,i=0;</p><p> struct goods *p1,*p2;</p><p> system("cls");<
75、/p><p> printf("請(qǐng)輸入四位編號(hào):");</p><p> scanf("%d",&p);</p><p> getchar();</p><p><b> if(p!=0)</b></p><p><b> {<
76、/b></p><p><b> p1=head;</b></p><p> while(p!=p1->number&&p1->next!=NULL) {</p><p><b> p2=p1;</b></p><p> p1=p1->next;<
77、;/p><p><b> }</b></p><p> if(p==p1->number)</p><p> {printf("\n 商品編號(hào) \t 名字 \t 數(shù)目 \t 價(jià)格:\n");</p><p> printf(" %d\t %s\t %d\t %f\n",p
78、1->number,p1->name,p1->shumu,p1->jiage);</p><p> printf("請(qǐng)輸入要修改的新商品編號(hào) ");</p><p> scanf("%d",&p1->number);</p><p><b> i=1;</b>&
79、lt;/p><p><b> }</b></p><p><b> if(i==1)</b></p><p><b> {</b></p><p> printf("修改后新商品編號(hào) 名字 數(shù)目 價(jià)格:\n");</p><p>
80、 printf("%d %s %d %f",p1->number,p1->name,p1->shumu,p1->jiage);</p><p> printf("修改成功!\n");</p><p> baocun(head);</p><p><b> }</b><
81、/p><p><b> }</b></p><p><b> }</b></p><p><b> 3.9銷售函數(shù)設(shè)計(jì)</b></p><p> void xiaoshu(struct goods *head)</p><p> {struct g
82、oods *baocun(struct goods *head); int c;</p><p><b> int p;</b></p><p> struct goods *p1,*p2;</p><p> system("cls");</p><p> printf("請(qǐng)輸入四位
83、編號(hào):");</p><p> scanf("%d",&p);</p><p> getchar();</p><p><b> p1=head;</b></p><p> while(p!=p1->number&&p1->next!=NULL)
84、{</p><p><b> p2=p1;</b></p><p> p1=p1->next;</p><p><b> }</b></p><p> if(p==p1->number)</p><p><b> {</b><
85、/p><p> printf("\n 商品編號(hào) \t 商品名 \t 數(shù)量 \t 價(jià)格 \n");</p><p> printf("%d\t\t%s\t\t%d\t\t%f\n",p1->number,p1->name,p1->shumu,p1->jiage);</p><p> printf(&qu
86、ot;請(qǐng)輸入該商品售貨個(gè)數(shù):");</p><p> scanf("%d",&c);</p><p> p1->shumu=p1->shumu-c;</p><p> printf("該商品經(jīng)貨個(gè)數(shù):%d\n",p1->shumu);</p><p><b
87、> }</b></p><p> baocun(head);</p><p><b> }</b></p><p><b> 4程序清單</b></p><p> #include<stdio.h></p><p> #include
88、<string.h></p><p> #include<stdlib.h></p><p> #include<malloc.h></p><p> #define LEN sizeof(struct goods)</p><p> struct goods //結(jié)構(gòu)體</p>&l
89、t;p> {int number; //商品編號(hào)</p><p> char name[20]; //商品名</p><p> int shumu; //商品數(shù)目</p><p> float jiage; //商品價(jià)格</p><p> struct goods *next;</p><p><
90、b> };</b></p><p> int n,k; //全局變量</p><p> struct goods *head; //全局變量</p><p> void main() //主函數(shù)</p><p><b> {</b></p><p> void jie
91、man(); //界面函數(shù)聲明</p><p> void luru(); //錄入函數(shù)聲明</p><p> struct goods *shuju(); //數(shù)據(jù)讀取函數(shù)聲明</p><p> void shanchu(struct goods *head); //刪除函數(shù)聲明 </p><p> void jinghuo(str
92、uct goods *head); //進(jìn)貨函數(shù)聲明 </p><p> void xiaoshu(struct goods *head); //銷售函數(shù)聲明</p><p> void xiugai(struct goods *head); //修改函數(shù)聲明 </p><p> void chaxun(struct goods *head); //查詢函數(shù)聲
93、明</p><p> struct goods *head=NULL;</p><p><b> int k=0;</b></p><p> system("cls");</p><p><b> jieman();</b></p><p> p
94、rintf("請(qǐng)選擇你要的功能鍵:");</p><p> scanf("%d",&k);getchar();</p><p> while(k!=0)</p><p><b> {</b></p><p> head=shuju();</p><
95、;p><b> switch(k)</b></p><p> {case 1:luru();break;</p><p> case 2:xiugai(head);break;</p><p> case 3:chaxun(head);break;</p><p> case 4:xiaoshu(head
96、);break;</p><p> case 5:jinghuo(head);break;</p><p> case 6:shanchu(head);break;</p><p> case 0:exit(0);</p><p> default:printf("please try again!\n");<
97、;/p><p><b> }</b></p><p><b> jieman();</b></p><p> printf("請(qǐng)選擇你要的功能鍵:");</p><p> scanf("%d",&k);</p><p>&l
98、t;b> }</b></p><p><b> }</b></p><p> struct goods *baocun(struct goods *head) //保存函數(shù) </p><p><b> {</b></p><p> struct goods *shuju(
99、);</p><p> struct goods *p=NULL;</p><p> FILE *fp=NULL;</p><p> char ch='\0';</p><p> getchar();</p><p> printf("是否保存到文件?(y/n):"); /
100、/判斷是否保存 </p><p> ch=getchar();</p><p> putchar(10);</p><p> if(ch=='y'||ch=='Y')</p><p><b> {</b></p><p> fp=fopen("g
101、oods.txt","wb");</p><p><b> p=head;</b></p><p> if((fp==NULL)&&(p==NULL))</p><p><b> {</b></p><p> printf("讀取數(shù)據(jù)失
102、敗!");</p><p><b> exit(0);</b></p><p><b> }</b></p><p> while(p!=NULL)</p><p><b> {</b></p><p> fprintf(fp,&qu
103、ot;%d\n%s\n%d\n%f\t",p->number,p->name,p->shumu,p->jiage);</p><p> p=p->next;</p><p><b> }</b></p><p> printf("保存成功!\n");</p><
104、;p> fclose(fp);</p><p> return(head);</p><p><b> }</b></p><p> else if(ch=='n'||ch=='N')</p><p><b> {</b></p><
105、;p> printf("信息未保存到文件!\n");</p><p> head=shuju();</p><p> return(head);</p><p><b> }</b></p><p><b> else</b></p><p&g
106、t;<b> {</b></p><p> printf("sorry,please try again(y/n):"); ch=getchar();</p><p> putchar(10);</p><p><b> }</b></p><p> return(he
107、ad);</p><p><b> }</b></p><p> void chaxun(struct goods *head) 查詢函數(shù) {</p><p> int a,c,i=0;</p><p> struct goods *p1,*p2;</p><p> char t[20]
108、;</p><p> printf(" 1*商品編號(hào)查詢\n"); printf(" 2*商品名字查詢\n"); printf("請(qǐng)選擇你需要的功能鍵\n"); scanf("%d",&a);</p><p> getchar();</p><p><b> if
109、(a==1)</b></p><p><b> {</b></p><p> printf("請(qǐng)輸入四位編號(hào):");</p><p> scanf("%d",&c);getchar();</p><p> while(c!=0&&i==0
110、)</p><p><b> {</b></p><p><b> p1=head;</b></p><p> while(c!=p1->number&&p1->next!=NULL) //查找商品</p><p> {p2=p1;p1=p1->next;}
111、</p><p> if(c==p1->number)</p><p> {printf("\n 商品編號(hào) \t 名字 \t 數(shù)目 \t 價(jià)格:\n");</p><p> printf(" %d\t %s\t %d\t %.2f\n",p1->number,p1->name,p1->shumu,
112、p1->jiage);i=1;}</p><p> else {printf("系統(tǒng)中無(wú)該商品記錄!press enter return!\n");getchar();system("cls");return;}</p><p><b> }</b></p><p><b> }&l
113、t;/b></p><p> if(a==2&&i==0)</p><p><b> {</b></p><p> system("cls");printf("請(qǐng)輸入商品名字:");</p><p> scanf("%s",&
114、;t);getchar();</p><p> while(strcmp(t,"0")!=0&&i==0)</p><p><b> {</b></p><p><b> p1=head;</b></p><p> if(strcmp(t,p1->n
115、ame)!=0&&p1->next!=NULL) //查找商品</p><p><b> {</b></p><p> p2=p1;p1=p1->next;</p><p><b> }</b></p><p> if(strcmp(t,p1->name)=
116、=0)</p><p><b> {</b></p><p> printf("\n 商品編號(hào) \t 名字 \t 數(shù)目 \t 價(jià)格:\n");</p><p> printf(" %d\t %s\t %d\t %f\n",p1->number,p1->name,p1->shumu,
117、p1->jiage);i=1;}</p><p> else {printf("系統(tǒng)中無(wú)該商品記錄!press enter return!\n");getchar();system("cls");return;}</p><p><b> }</b></p><p><b> }&l
118、t;/b></p><p><b> }</b></p><p> void jinghuo(struct goods *head) //進(jìn)貨函數(shù)</p><p> {struct goods *baocun(struct goods *head);</p><p><b> int c;<
119、/b></p><p><b> int p;</b></p><p> struct goods *p1,*p2;</p><p> system("cls");</p><p> printf("請(qǐng)輸入四位編號(hào):");</p><p>
120、scanf("%d",&p);</p><p><b> p1=head;</b></p><p> while(p!=p1->number&&p1->next!=NULL) 查找商品 {</p><p><b> p2=p1;</b></p>&
121、lt;p> p1=p1->next;</p><p><b> }</b></p><p> if(p==p1->number)</p><p><b> {</b></p><p> printf("\n 商品編號(hào) \t 商品名 \t 數(shù)量 \t 價(jià)格 \n&
122、quot;);</p><p> printf("%d\t\t%s\t\t%d\t\t%f\n",p1->number,p1->name,p1->shumu,p1->jiage);</p><p> printf("請(qǐng)輸入該商品經(jīng)貨個(gè)數(shù):");</p><p> scanf("%d&qu
123、ot;,&c);</p><p> p1->shumu=p1->shumu+c;</p><p> printf("該商品經(jīng)貨個(gè)數(shù):%d\n",p1->shumu); }</p><p> baocun(head); //保存數(shù)據(jù)</p><p><b> }</b>
124、</p><p> void luru()</p><p> {struct goods *shuju(); //調(diào)用函數(shù)</p><p> struct goods *baocun(struct goods *head); struct goods *p1,*p2,*p3;</p><p> head=shuju();</p&
125、gt;<p><b> p1=head;</b></p><p> p2=(struct goods *)malloc(LEN);</p><p> printf("請(qǐng)輸入四位編號(hào):");</p><p> scanf("%d",&p2->number);</p&
126、gt;<p> printf("請(qǐng)輸入商品名:");</p><p> scanf("%s",p2->name);</p><p> printf("請(qǐng)輸入商品數(shù)量:");</p><p> scanf("%d",&p2->shumu);<
127、/p><p> printf("請(qǐng)輸入商品價(jià)格:");</p><p> scanf("%f",&p2->jiage);</p><p> if(p1==NULL)</p><p><b> {p1=p2;</b></p><p> p2
128、->next=NULL;</p><p> baocun(p2);</p><p><b> return;</b></p><p><b> }</b></p><p> while(p1!=NULL)</p><p> {p3=p1;p1=p1->n
129、ext;}</p><p> p3->next=p2;</p><p> p2->next=NULL;</p><p> baocun(head); //保存數(shù)據(jù)</p><p><b> }</b></p><p> void shanchu(struct goods *h
130、ead) //刪除函數(shù)</p><p> {struct goods *p1,*p2;</p><p> struct goods *baocun(struct goods *head); int p;</p><p> system("cls");</p><p> printf("請(qǐng)輸入四位編號(hào):&q
131、uot;);</p><p> scanf("%d",&p);</p><p><b> p1=head;</b></p><p> while(p!=p1->number&&p1->next!=NULL)// 查找商品</p><p> {p2=p1;p1
132、=p1->next;}</p><p> if(p==p1->number)</p><p> {printf("\n商品編號(hào) \t商品名 \t 數(shù)量 \t 價(jià)格 \n"); printf(" %d\t\t%s\t\t%d\t\t%.2f\n",p1->number,p1->name,p1->shumu,p1->
133、;jiage);</p><p> if(p1==head) head=p1->next;</p><p> else p2->next=p1->next;n=n-1;</p><p><b> }</b></p><p> printf("刪除成功!\n");</p&
134、gt;<p> baocun(head);</p><p><b> }</b></p><p> struct goods *shuju() //數(shù)據(jù)讀取函數(shù)</p><p><b> {</b></p><p><b> int n=0;</b>&l
135、t;/p><p><b> FILE *fp;</b></p><p> struct goods *head=NULL,*p1,*p2;</p><p> fp=fopen("goods.txt","rb");</p><p> if(fp==NULL)</p>
136、<p><b> {</b></p><p> printf("\nsorry,讀取數(shù)據(jù)失敗!\n");</p><p><b> exit(0);</b></p><p><b> }</b></p><p><b> el
137、se</b></p><p><b> {</b></p><p> p1=p2=(struct goods *)malloc(LEN);</p><p> fscanf(fp,"%d%s%d%f",&p1->number,p1->name,&p1->shumu,&
138、p1->jiage);</p><p> while(!feof(fp))</p><p><b> {</b></p><p><b> n++;</b></p><p> if(n==1)head=p1;</p><p> else p2->next
139、=p1;</p><p><b> p2=p1;</b></p><p> p1=(struct goods *)malloc(LEN);</p><p> fscanf(fp,"%d%s%d%f",&p1->number,p1->name,&p1->shumu,&p1->
140、;jiage);</p><p><b> }</b></p><p> p2->next=NULL;</p><p> fclose(fp);</p><p> return(head);</p><p><b> }</b></p><
141、p><b> }</b></p><p> void jieman() 界面函數(shù)</p><p><b> {</b></p><p> printf("********************************************\n");</p><p&g
142、t; printf("☆☆☆★★★歡迎進(jìn)入商品管理系統(tǒng)★★★☆☆☆\n"); printf("**1 *錄入信息☆☆***************★★★☆☆☆\n"); printf("**2 *修改信息☆☆***************★★★☆☆☆\n"); printf("**3 *查詢信息☆☆***************★★★☆☆☆\n"); pr
143、intf("**4 *銷售信息☆☆***************★★★☆☆☆\n"); printf("**5 *進(jìn)貨信息☆☆***************★★★☆☆☆\n"); printf("**6 *刪除信息☆☆***************★★★☆☆☆\n"); printf("**0 *退出系統(tǒng)☆☆***************★★★☆☆☆\n")
144、; </p><p> printf("☆☆☆★★★歡迎進(jìn)入商品管理系統(tǒng)★★★☆☆☆\n"); printf("********************************************\n");</p><p><b> }</b></p><p> void xiaoshu(str
145、uct goods *head) 銷售函數(shù)</p><p> {struct goods *baocun(struct goods *head);</p><p><b> int c;</b></p><p><b> int p;</b></p><p> struct goods *p
146、1,*p2;</p><p> system("cls");</p><p> printf("請(qǐng)輸入四位編號(hào):");</p><p> scanf("%d",&p);</p><p> getchar();</p><p><b>
147、 p1=head;</b></p><p> while(p!=p1->number&&p1->next!=NULL) 查找商品 {</p><p><b> p2=p1;</b></p><p> p1=p1->next;</p><p><b> }&
148、lt;/b></p><p> if(p==p1->number)</p><p><b> {</b></p><p> printf("\n 商品編號(hào) \t 商品名 \t 數(shù)量 \t 價(jià)格 \n");</p><p> printf("%d\t\t%s\t\t%d\t
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- c語(yǔ)言課程設(shè)計(jì)報(bào)告----網(wǎng)上購(gòu)物管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)(論文)-購(gòu)物卡管理系統(tǒng)
- c#課程設(shè)計(jì)--網(wǎng)上購(gòu)物系統(tǒng)
- 網(wǎng)上購(gòu)物系統(tǒng)課程設(shè)計(jì)報(bào)告
- c課程設(shè)計(jì)報(bào)告歌星管理系統(tǒng)報(bào)告
- 某商店進(jìn)銷存管理系統(tǒng)-課程設(shè)計(jì)報(bào)告
- c課程設(shè)計(jì)報(bào)告-超市管理系統(tǒng)
- 倉(cāng)庫(kù)管理系統(tǒng)c課程設(shè)計(jì)報(bào)告
- c課程設(shè)計(jì)報(bào)告
- c課程設(shè)計(jì)報(bào)告
- 超市購(gòu)物管理系統(tǒng)課程設(shè)計(jì)
- 商店pos積分管理系統(tǒng)課程設(shè)計(jì)
- 網(wǎng)上購(gòu)物管理信息系統(tǒng)課程設(shè)計(jì)報(bào)告
- c++課程設(shè)計(jì)——學(xué)生信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- c++課程設(shè)計(jì)—教師管理系統(tǒng)報(bào)告
- 酒店管理系統(tǒng)_c++課程設(shè)計(jì)報(bào)告
- c課程設(shè)計(jì)報(bào)告-- 圖書管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)報(bào)告(宿舍管理系統(tǒng))
- c語(yǔ)言課程設(shè)計(jì)報(bào)告--車票管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)報(bào)告--成績(jī)管理系統(tǒng)
評(píng)論
0/150
提交評(píng)論