C語言設(shè)計(jì)報(bào)告模版_第1頁
C語言設(shè)計(jì)報(bào)告模版_第2頁
C語言設(shè)計(jì)報(bào)告模版_第3頁
C語言設(shè)計(jì)報(bào)告模版_第4頁
C語言設(shè)計(jì)報(bào)告模版_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、本模板是課程設(shè)計(jì)報(bào)告模板,請(qǐng)各位同學(xué)認(rèn)真閱讀以下要求:本頁為設(shè)計(jì)報(bào)告要求頁,不必打印。(制作好報(bào)告后輸出時(shí)將本頁刪除)本模板的各種字體及頁面設(shè)置請(qǐng)同學(xué)們不要改動(dòng)。本設(shè)計(jì)報(bào)告左側(cè)裝訂。在虛線處裝訂。在課程設(shè)計(jì)封皮一頁上用已經(jīng)設(shè)置好的宋體四號(hào)來填寫各個(gè)項(xiàng)目。在課程設(shè)計(jì)評(píng)定表一頁上用宋體小四填寫班級(jí)、學(xué)號(hào)、姓名、項(xiàng)目組、項(xiàng)目組長(zhǎng)、項(xiàng)目組組員、本人工作簡(jiǎn)介。組長(zhǎng)評(píng)語一欄應(yīng)由組長(zhǎng)來給出。在課程設(shè)計(jì)任務(wù)書一頁的開頭應(yīng)按照給定的設(shè)置(黑體三號(hào))填寫好你的班級(jí),在第五項(xiàng)時(shí)間安排里面應(yīng)用宋體五號(hào)加粗來填寫好日期范圍。從程序基本框架結(jié)構(gòu)圖開始到設(shè)計(jì)報(bào)告的最后一頁都要求有頁眉,內(nèi)容為你的課程設(shè)計(jì)題目,宋體小五居中。

2、頁腳中的頁碼已經(jīng)設(shè)置好,同學(xué)們不必改動(dòng)。在程序基本框架結(jié)構(gòu)圖采用WORD中的自選圖形繪制程序基本框架結(jié)構(gòu)圖,也就是程序流程圖。在程序設(shè)計(jì)說明書中應(yīng)該描述程序的設(shè)計(jì)思想,重點(diǎn)描述自己做的那部分的設(shè)計(jì)思想。字體用宋體小四。在代碼清單中打印程序已經(jīng)調(diào)試好的可運(yùn)行的程序代碼。要求字體為宋體 五號(hào)。(頁數(shù)可增加)報(bào)告的最后一部分是設(shè)計(jì)總結(jié),應(yīng)在程序代碼之后另起一頁,主要寫通過一周課程設(shè)計(jì)你自己的體會(huì),包括你學(xué)到了什么,哪里遇到了困難解決的辦法以及今后的目標(biāo)。字體用宋體小四。報(bào)告的各個(gè)部分都可以不為規(guī)定的一頁,自己可增加頁數(shù),但要保證開始另外一項(xiàng)要另起一頁。13. 服務(wù)課程名稱:本科添寫:C語言;/??铺?/p>

3、寫:計(jì)算機(jī)語言(c)14. 報(bào)告完成后,要更新目錄。方法為:?jiǎn)螕裟夸涀髠?cè),選定整個(gè)目錄后,按F9鍵更新目錄。課 程 設(shè) 計(jì)服務(wù)課程名稱: C語言 系: 能源與動(dòng)力工程系 專業(yè): 熱能與動(dòng)力工程 班級(jí): 熱動(dòng)本111 學(xué)號(hào) 2011101127 姓名:肖國(guó)寧 指導(dǎo)教師: 姚大鵬 課程設(shè)計(jì)周次: 17 起始日期:2012.6.18 至2012.6.22 目錄 TOC h z t 標(biāo)題 2,1 HYPERLINK l _Toc326586249 C語言課程設(shè)計(jì)成績(jī)?cè)u(píng)定表 PAGEREF _Toc326586249 h 1 HYPERLINK l _Toc326586250 C語言課程設(shè)計(jì)任務(wù)書 PA

4、GEREF _Toc326586250 h 2 HYPERLINK l _Toc326586251 程序設(shè)計(jì)思路 PAGEREF _Toc326586251 h 3 HYPERLINK l _Toc326586252 程序基本框架結(jié)構(gòu)圖 PAGEREF _Toc326586252 h 4 HYPERLINK l _Toc326586253 系統(tǒng)運(yùn)行界面截圖 PAGEREF _Toc326586253 h 5 HYPERLINK l _Toc326586254 源代碼清單 PAGEREF _Toc326586254 h 6 HYPERLINK l _Toc326586255 課程設(shè)計(jì)總結(jié) PAG

5、EREF _Toc326586255 h 7C語言課程設(shè)計(jì)成績(jī)?cè)u(píng)定表班級(jí)熱動(dòng)本111學(xué)號(hào)27姓名肖國(guó)寧項(xiàng)目組項(xiàng)目組長(zhǎng)肖國(guó)寧項(xiàng)目組組員本人工作簡(jiǎn)介:組長(zhǎng)評(píng)語:成績(jī)?cè)u(píng)定標(biāo)準(zhǔn)ABCDE理論基礎(chǔ)很好好比較好一般不好報(bào)告完成情況很好好比較好一般不好紀(jì)律表現(xiàn)很好好比較好一般不好程序創(chuàng)意很好好比較好一般不好所選模塊完成情況很好好一般較差不好所選算法難易程度復(fù)雜比較復(fù)雜一般簡(jiǎn)單很簡(jiǎn)單程序可操作性很好好一般較差不好答辯表現(xiàn)很好好一般較差不好最后成績(jī)優(yōu)秀A=5B=3C=3B=4C=1B=2C=4D=1E=0及格A=0B=0C=4不及格A=0B=0C=0D=4負(fù)責(zé)指導(dǎo)教師: (簽名)指導(dǎo)教師: (簽名)C語言課程設(shè)

6、計(jì)任務(wù)書一、設(shè)計(jì)目的通過本次課程設(shè)計(jì)使學(xué)生進(jìn)一步加深對(duì)C語言課程內(nèi)容的理解,初步掌握一般應(yīng)用程序的開發(fā)方法和步驟,進(jìn)一步了解與掌握C語言的編程方法和技巧,提高學(xué)生用C語言解決實(shí)際問題的能力。二、設(shè)計(jì)要求1、認(rèn)真查閱參考書、資料2、遵守課程設(shè)計(jì)時(shí)間安排3、按時(shí)上機(jī),認(rèn)真調(diào)試程序4、認(rèn)真完成課程設(shè)計(jì)報(bào)告三、課設(shè)報(bào)告裝訂內(nèi)容及順序1、課程設(shè)計(jì)封皮2、目錄3、課程設(shè)計(jì)成績(jī)?cè)u(píng)定表4、課程設(shè)計(jì)任務(wù)書5、程序基本框架圖 6、程序設(shè)計(jì)說明書7、源代碼清單8、課設(shè)總結(jié)與心得四、設(shè)計(jì)題目_五、時(shí)間安排(一周:從 6 月 18 日到 6 月 23 日 )1、查閱資料及程序設(shè)計(jì)(1天)2、程序編制及調(diào)試(3天)3、成

7、績(jī)?cè)u(píng)定(0.5天)3、打印報(bào)告(0.5天)六、參考文獻(xiàn)1、C語言程序設(shè)計(jì)李淑華/李貞編 大連理工大學(xué)出版社2、C語言程序設(shè)計(jì)孫連科/姚大鵬編 遼海出版社3、C+時(shí)尚編程百例網(wǎng)冠科技編.機(jī)械工業(yè)出版社4、TURBO C 實(shí)用大全徐金梧等編. 機(jī)械工業(yè)出版社程序設(shè)計(jì)思路在我們小組設(shè)計(jì)的“商品物資管理系統(tǒng)”中我負(fù)責(zé)商品的排序和對(duì)所有程序進(jìn)行整合兩部分。 排序部分:我所用的排序方法是插入排序的方法。首先建立一個(gè)了鏈表,此鏈表包括插入函數(shù)和排序函數(shù)。 首先編輯插入函數(shù),在定義相應(yīng)的指針變量。然后if (fscanf(fp, %s %s %s %s %d %d %dn,&wpmc, &wpgg, &scc

8、j, &ccrq, &dj, &sl, &je) 0) 進(jìn)行排序。排序:PRO *follow = head, *next, *q = head-next;/插入排序。在鏈表中間找到位置if (q-je t-je)。輸入節(jié)點(diǎn)的金額是最大的if (q-next = NULL) 。將商品按商品名稱進(jìn)行排序。 程序整合:程序整合就是將本小組成員所做的程序很好的集結(jié)在一起,需要在系統(tǒng)開始部分做一些調(diào)用函數(shù),以及主菜單的設(shè)計(jì),讓整個(gè)系統(tǒng)可以正常運(yùn)行。并使系統(tǒng)所要表達(dá)的內(nèi)容具體、明確。程序基本框架結(jié)構(gòu)圖倉庫管理管理系統(tǒng)管理系統(tǒng)退出系統(tǒng)數(shù)據(jù)修改數(shù)據(jù)刪除數(shù)據(jù)查詢數(shù)據(jù)瀏覽數(shù)據(jù)錄入返回按查詢按查詢系統(tǒng)運(yùn)行界面截圖

9、源代碼清單#include#include#include#include #define MAX 20typedef struct product /* 定義結(jié)構(gòu)體 */ char wpmcMAX; /* 物品名稱*/ char wpggMAX; /*物品規(guī)格*/ char sccjMAX; /*生產(chǎn)廠家*/ char ccrqMAX; /*出廠日期*/ int dj,sl,je; /*單價(jià),數(shù)量,金額*/ struct product *next; /* 定義指針,指向其后繼 */PRO; / PRO變量名表列 void input(); /輸入void output(); /輸出void

10、 search(); /查詢void searchwpmcgg(PRO *L);/按物品名稱+規(guī)格查詢void searchsccj(PRO *L);/按物生產(chǎn)廠家查詢void searchccrq(PRO *L);/按物品生產(chǎn)廠家查詢void searchwpsl(PRO *L);/按物品數(shù)量查詢void searchwpmc(PRO *L);/按物品名稱查詢void modi(); /修改void dele(); /刪除void sort(); /排序void delewpmcgg(PRO *L);/按物品名稱+規(guī)格刪除void delewpmc(PRO *L);/按物品名稱刪除void

11、sortwpmc(PRO *L);/按物品名稱排序 void main() int x; while(1)/*主菜單*/ system(cls); /清屏 printf(n); printf(n); printf(n); printf(n); printf(tttn); printf(ttt 歡迎使用 n); printf(ttt n); printf(ttt 商品物資管理系統(tǒng) n); printf(ttt n); printf(tttn);system(pause); system(cls); printf(n); printf(n); printf(n); printf(tttn); pr

12、intf(ttt 1. 輸入 n); printf(ttt 2. 輸出 n); printf(ttt 3. 追加 n); printf(ttt 4. 查詢 n); printf(ttt 5. 修改 n); printf(ttt 6. 刪除 n); printf(ttt 7. 排序 n); printf(ttt 0. 退出 n); printf(tttn); printf(ttt選擇0-7:); scanf(%d,&x); switch(x) case 1:input();break; /調(diào)用輸入函數(shù) case 2:output();break; /調(diào)用輸出函數(shù) case 3:input();b

13、reak; /調(diào)用追加函數(shù) case 4:search();break; /調(diào)用查找函數(shù) case 5:modi();break; /調(diào)用修改函數(shù) case 6:dele();break; /調(diào)用刪除函數(shù) case 7:sort();break; /調(diào)用排序函數(shù) case 0:exit(0); /退出程序 default:printf(n輸入錯(cuò)誤,請(qǐng)輸入數(shù)字0-7n); / 其它的值 getchar(); /從終端讀取單個(gè)字符 void search() /查找的主菜單 int x;PRO *L;PRO *head,*node;FILE *fout;if(!(L=(PRO *)malloc(s

14、izeof(PRO) /分配空間 return ;elseL-next =NULL;if(!(head=(PRO *)malloc(sizeof(PRO) /分配空間 return ;elsehead-next =NULL; L-next =head ;if(!(fout=fopen(c:ckgl.txt,r)/打開庫存管理文件printf(打開文件失敗n);return;while(!feof(fout) if(!(node=(PRO *)malloc(sizeof(PRO) /分配空間 printf(無法分配空間給新結(jié)點(diǎn)); return;elsenode-next =NULL; fsca

15、nf(fout,%s %s %s %s %d %d %dn,node-wpmc ,node-wpgg ,node-sccj ,node-ccrq ,&node-dj ,&node-sl ,&node-je );if(node-dj0) head-next =node; head=head-next ; while(1) system(cls);printf(ntttt查詢方式n); printf(tttn); printf(ttt 1.按物品名稱查詢n); printf(ttt 2.按物品名稱+物品規(guī)格查詢n); printf(ttt 3.按生產(chǎn)廠家查詢n);printf(ttt 4.按出廠日

16、期查詢n);printf(ttt 5.按物品數(shù)量查詢n);printf(ttt 0.返回主菜單n); printf(tttn); printf(請(qǐng)輸入你的選擇0-5:); scanf(%d,&x); switch(x) case 1:searchwpmc(L-next );break; /調(diào)用按物品名稱查找的函數(shù) case 2:searchwpmcgg(L-next );break; /調(diào)用按名稱+規(guī)格查找的函數(shù)case 3:searchsccj(L-next );break; /調(diào)用按生產(chǎn)廠家查找的函數(shù)case 4:searchccrq(L-next );break; /調(diào)用按出廠日期查找的

17、函數(shù)case 5:searchwpsl(L-next );break; /調(diào)用按物品數(shù)量查找的函數(shù) case 0:return ; /返回 default:printf(輸入錯(cuò)誤,請(qǐng)重新輸入0-5n); void searchwpmc(PRO *L)/按物品名稱查找 PRO *head;char nameMAX;if( L-next !=NULL)head=L-next ;printf(請(qǐng)輸入你要查詢的物品名稱:);scanf(%s,name);while(head&strcmp(head-wpmc ,name)!=0 )head=head-next ;if (head=NULL)printf

18、(文件中無此物品數(shù)據(jù)n);elsehead=L-next ;printf(n物品名稱 物品規(guī)格 生產(chǎn)廠家 出廠日期 單價(jià) 數(shù)量 金額n);while(head ) if(strcmp(head-wpmc ,name)=0) printf(%-10s%-10s%-12s%-12s%-6d%-6d%-6dn,head-wpmc ,head-wpgg,head-sccj,head-ccrq,head-dj,head-sl,head-je); head=head-next ; else printf(文件中無任何物品信息n);printf(n);system(pause);/按任意鍵繼續(xù)void se

19、archwpmcgg(PRO *L) /按物品名稱+規(guī)格查找PRO *head;char nameMAX,guigeMAX;if( L-next !=NULL)head=L-next ;printf(請(qǐng)輸入你要查詢的物品名稱:);scanf(%s,name);printf(請(qǐng)輸入你要查詢的物品規(guī)格:);scanf(%s,guige);while(head&(strcmp(head-wpmc ,name)!=0|strcmp(head-wpgg ,guige)!=0 )head=head-next ;if (head=NULL)printf(文件中沒有符合條件的物品數(shù)據(jù)n);elsehead=L

20、-next ;printf(n物品名稱 物品規(guī)格 生產(chǎn)廠家 出廠日期 單價(jià) 數(shù)量 金額n);while(head ) if(strcmp(head-wpmc ,name)=0&strcmp(head-wpgg ,guige)=0) printf(%-10s%-10s%-12s%-12s%-6d%-6d%-6dn,head-wpmc ,head-wpgg,head-sccj,head-ccrq,head-dj,head-sl,head-je); head=head-next ; else printf(文件中無任何物品信息n);printf(n);system(pause);/按任意鍵繼續(xù) vo

21、id searchccrq(PRO *L) /按出廠日期查找 PRO *head;char beginMAX,endMAX;if( L-next !=NULL)head=L-next ;printf(請(qǐng)輸入你要查詢的起始日期:);scanf(%s,begin);printf(請(qǐng)輸入你要查詢的終止日期:);scanf(%s,end);while(head&(strcmp(head-ccrq ,begin)ccrq ,end)0)head=head-next ;if (head=NULL)printf(文件中沒有符合條件的物品數(shù)據(jù)n);elsehead=L-next ;printf(n物品名稱 物

22、品規(guī)格 生產(chǎn)廠家 出廠日期 單價(jià) 數(shù)量 金額n);while(head ) if(strcmp(head-ccrq ,begin)=0&strcmp(head-ccrq ,end)wpmc ,head-wpgg,head-sccj,head-ccrq,head-dj,head-sl,head-je); head=head-next ; else printf(文件中無任何物品信息n);printf(n);system(pause);/按任意鍵繼續(xù) void searchsccj(PRO *L) /按生產(chǎn)廠家查找 PRO *head;char facMAX;if( L-next !=NULL)h

23、ead=L-next ;printf(請(qǐng)輸入你要查詢物品的生產(chǎn)廠家:);scanf(%s,fac);while(head&strcmp(head-sccj ,fac)!=0 )head=head-next ;if (head=NULL)printf(文件中無此生產(chǎn)廠家生產(chǎn)的物品n);elsehead=L-next ;printf(n物品名稱 物品規(guī)格 生產(chǎn)廠家 出廠日期 單價(jià) 數(shù)量 金額n);while(head ) if(strcmp(head-sccj ,fac)=0) printf(%-10s%-10s%-12s%-12s%-6d%-6d%-6dn,head-wpmc ,head-wpg

24、g,head-sccj,head-ccrq,head-dj,head-sl,head-je); head=head-next ; else printf(文件中無任何物品信息n);printf(n);system(pause);/按任意鍵繼續(xù) void searchwpsl(PRO *L) /按物品數(shù)量查找 PRO *head;int num1,num2;if( L-next !=NULL)head=L-next ;printf(請(qǐng)輸入你要查詢物品的數(shù)量下限:);scanf(%d,&num1);printf(請(qǐng)輸入你要查詢物品的數(shù)量上限:);scanf(%d,&num2);while(head

25、&(head-slsl num2 )head=head-next ;if (head=NULL)printf(文件中沒有符合條件的物品數(shù)據(jù)n);elsehead=L-next ;printf(n物品名稱 物品規(guī)格 生產(chǎn)廠家 出廠日期 單價(jià) 數(shù)量 金額n);while(head ) if(head-sl=num1&head-slwpmc ,head-wpgg,head-sccj,head-ccrq,head-dj,head-sl,head-je); head=head-next ; else printf(文件中無任何物品信息n);printf(n);system(pause);/按任意鍵繼續(xù)

26、void modi() /修改 PRO *L;/引用結(jié)構(gòu)體指向LPRO *head,*node,*temp;/引用結(jié)構(gòu)體指向head,node,tempchar nameMAX,guigeMAX,c;FILE *fout;if(!(L=(PRO *)malloc(sizeof(PRO) /分配空間 return ; /如果上面的條件為假時(shí)返回elseL-next =NULL;if(!(head=(PRO *)malloc(sizeof(PRO) /分配空間 return ;elsehead-next =NULL;if(!(temp=(PRO *)malloc(sizeof(PRO) /分配空間

27、 return ;elsetemp-next =NULL; L-next =head ;if(!(fout=fopen(c:ckgl.txt,r)printf(打開文件失敗n);return;while(!feof(fout) if(!(node=(PRO *)malloc(sizeof(PRO) /分配空間 printf(無法分配空間給新結(jié)點(diǎn)); return;elsenode-next =NULL; fscanf(fout,%s %s %s %s %d %d %dn,node-wpmc ,node-wpgg ,node-sccj ,node-ccrq ,&node-dj ,&node-sl

28、 ,&node-je );if(node-dj0) head-next =node; head=head-next ;fclose(fout);if(L-next -next =NULL)printf(文件中無任何物品信息n);system(pause);elsesystem(cls);head=L-next -next ;printf(ttt產(chǎn)品庫存記錄n);printf(物品名稱 物品規(guī)格 生產(chǎn)廠家 出廠日期 單價(jià) 數(shù)量 金額n);while(head )printf(%-10s%-10s%-12s%-12s%-6d%-6d%-6dn,head-wpmc ,head-wpgg,head-s

29、ccj,head-ccrq,head-dj,head-sl,head-je); head=head-next ;head=L-next -next ;printf(請(qǐng)輸入你要修改的物品名稱:);scanf(%s,name);printf(請(qǐng)輸入你要修改的物品規(guī)格:);scanf(%s,guige);while(head&(strcmp(head-wpmc ,name)!=0|strcmp(head-wpgg ,guige)!=0 )head=head-next ;if (head=NULL)printf(文件中沒有該物品的數(shù)據(jù),無法進(jìn)行修改操作n);elsehead=L-next-next ;

30、printf(n物品名稱 物品規(guī)格 生產(chǎn)廠家 出廠日期 單價(jià) 數(shù)量 金額n);while(head ) if(strcmp(head-wpmc ,name)=0&strcmp(head-wpgg ,guige)=0) printf(%-10s%-10s%-12s%-12s%-6d%-6d%-6dn,head-wpmc ,head-wpgg,head-sccj,head-ccrq,head-dj,head-sl,head-je); break; head=head-next ; printf(n請(qǐng)輸入修改后的物品數(shù)據(jù):n);printf(物品名稱:);scanf(%s,temp-wpmc);pr

31、intf(物品規(guī)格:);scanf(%s,temp-wpgg);printf(生產(chǎn)廠家:);scanf(%s,temp-sccj);printf(出廠日期:);scanf(%s,temp-ccrq);printf(物品單價(jià):);scanf(%d,&temp-dj);while(temp-dj dj);printf(物品數(shù)量:);scanf(%d,&temp-sl);while(temp-sl sl);temp-je=temp-sl*temp-dj;printf(確認(rèn)修改嗎?(Y/N);getchar();scanf(%c,&c);while(1) if(c!=Y&c!=y&c!=N&c!=n)

32、 printf(請(qǐng)輸入正確的選擇(Y/N); getchar(); scanf(%c,&c); else break; if(c=N|c=n) ; else if(c=Y|c=y) if(!(fout=fopen(c:ckgl.txt,w)printf(打開文件失敗n);return; strcpy(head-wpmc,temp-wpmc); strcpy(head-wpgg,temp-wpgg); strcpy(head-sccj,temp-sccj); strcpy(head-ccrq,temp-ccrq); head-dj=temp-dj; head-sl=temp-sl; head-j

33、e=temp-je; node=L-next-next ; while(node) fprintf(fout,%s %s %s %s %d %d %dn,node-wpmc ,node-wpgg ,node-sccj ,node-ccrq ,node-dj ,node-sl ,node-je );node=node-next ; fclose(fout); system(pause); void dele() /刪除 int x;PRO *L;PRO *head,*node;FILE *fout;if(!(L=(PRO *)malloc(sizeof(PRO) /分配空間 return ;el

34、seL-next =NULL;if(!(head=(PRO *)malloc(sizeof(PRO) /分配空間 return ;elsehead-next =NULL; L-next =head ;if(!(fout=fopen(c:ckgl.txt,r)printf(打開文件失敗n);return;while(!feof(fout) if(!(node=(PRO *)malloc(sizeof(PRO) /分配空間 printf(無法分配空間給新結(jié)點(diǎn)); return;elsenode-next =NULL; fscanf(fout,%s %s %s %s %d %d %dn,node-w

35、pmc ,node-wpgg ,node-sccj ,node-ccrq ,&node-dj ,&node-sl ,&node-je );if(node-dj0) head-next =node; head=head-next ; while(1) system(cls);printf(ntttt刪除方式n); printf(tttn); printf(ttt 1.按物品名稱刪除 n); printf(ttt 2.按物品名稱+物品規(guī)格刪除 n); printf(ttt 0.返回主菜單 n); printf(tttn); printf(請(qǐng)輸入你的選擇0-2:); scanf(%d,&x); sw

36、itch(x) case 1:delewpmc(L-next );break; /調(diào)用按物品名稱查找的函數(shù) case 2:delewpmcgg(L-next );break; /調(diào)用按名稱+規(guī)格查找的函數(shù) case 0:return ; /返回 default:printf(輸入錯(cuò)誤,請(qǐng)重新輸入0-5n); void input() /輸入 PRO *in,*last, *L;char c;int x=1;FILE *fin;if(!(L=(PRO *)malloc(sizeof(PRO) /分配空間 return ;elseL-next =NULL; /否則結(jié)點(diǎn)L接到鏈表尾為空if(!(fi

37、n=fopen(c:ckgl.txt,a) / 打開文件, a 向向文本文件尾追加數(shù)據(jù)printf(打開文件失敗n);exit(1); /返回值為1時(shí)打開失敗 if(!(in=(PRO *)malloc(sizeof(PRO) /分配空間 printf(無法分配空間給新結(jié)點(diǎn));return; /當(dāng)上面的條件為真時(shí)返回last=L; /指針L指向指針lastwhile(last-next !=NULL) last=last-next ; /當(dāng)指針last指向的下一個(gè)位置不為空時(shí)while(x) printf(n請(qǐng)輸入物品數(shù)據(jù):n); printf(物品名稱:);scanf(%s,in-wpmc)

38、; printf(物品規(guī)格:);scanf(%s,in-wpgg);printf(生產(chǎn)廠家:);scanf(%s,in-sccj);printf(出廠日期:);scanf(%s,in-ccrq);printf(物品單價(jià):);scanf(%d,&in-dj);while(in-dj dj);printf(物品數(shù)量:);scanf(%d,&in-sl);while(in-sl sl);in-je=in-sl*in-dj; last-next =in;last=last-next ;fprintf(fin,%s %s %s %s %d %d %dn,in-wpmc ,in-wpgg ,in-sccj

39、 ,in-ccrq ,in-dj ,in-sl ,in-je );printf(是否繼續(xù)輸入?(Y/N);getchar();scanf(%c,&c);while(1) if(c!=Y&c!=y&c!=N&c!=n) printf(請(qǐng)輸入正確的選擇(Y/N); getchar(); scanf(%c,&c); else break; if(c=N|c=n) x=0; else if(c=Y|c=y)if(!(in=(PRO *)malloc(sizeof(PRO) /分配空間 printf(無法分配空間給新結(jié)點(diǎn)); exit(1); fclose(fin);void output() /輸出P

40、RO *head,*node,*L;FILE *fout;if(!(L=(PRO *)malloc(sizeof(PRO) /分配空間 return ;elseL-next =NULL;if(!(head=(PRO *)malloc(sizeof(PRO) /分配空間 return ;elsehead-next =NULL; L-next =head ;if(!(fout=fopen(c:ckgl.txt,r)printf(打開文件失敗n);return ;while(!feof(fout)if(!(node=(PRO *)malloc(sizeof(PRO) /分配空間 printf(無法分

41、配空間給新結(jié)點(diǎn)); return ;elsenode-next =NULL; fscanf(fout,%s %s %s %s %d %d %dn,node-wpmc ,node-wpgg ,node-sccj ,node-ccrq ,&node-dj ,&node-sl ,&node-je );if(node-dj=0)head-next =node;head=head-next ; if(head=L-next-next )=NULL)printf(文件中無任何產(chǎn)品信息n);elsesystem(cls);printf(ttt產(chǎn)品庫存記錄n);printf(物品名稱 物品規(guī)格 生產(chǎn)廠家 出廠

42、日期 單價(jià) 數(shù)量 金額n);while(head )printf(%-10s%-10s%-12s%-12s%-6d%-6d%-6dn,head-wpmc ,head-wpgg,head-sccj,head-ccrq,head-dj,head-sl,head-je); head=head-next ;fclose(fout);system(pause);/按任意鍵繼續(xù) void delewpmcgg(PRO *L)PRO *head,*node,*temp;char nameMAX,guigeMAX,c;FILE *fout;if(!(head=(PRO *)malloc(sizeof(PRO)

43、 /分配空間 return ;elsehead-next =NULL;if(!(temp=(PRO *)malloc(sizeof(PRO) /分配空間 return ;elsetemp-next =NULL; if(L-next =NULL)printf(文件中無任何物品信息n);system(pause);elsesystem(cls);head=L-next ;printf(nttt產(chǎn)品庫存記錄n);printf(物品名稱 物品規(guī)格 生產(chǎn)廠家 出廠日期 單價(jià) 數(shù)量 金額n);while(head )printf(%-10s%-10s%-12s%-12s%-6d%-6d%-6dn,head

44、-wpmc ,head-wpgg,head-sccj,head-ccrq,head-dj,head-sl,head-je); head=head-next ;head=L-next;printf(請(qǐng)輸入你要?jiǎng)h除的物品名稱:);scanf(%s,name);printf(請(qǐng)輸入你要?jiǎng)h除的物品規(guī)格:);scanf(%s,guige);while(head&(strcmp(head-wpmc ,name)!=0|strcmp(head-wpgg ,guige)!=0 )head=head-next ;if (head=NULL)printf(文件中沒有該物品的數(shù)據(jù),無法進(jìn)行刪除操作n);elsehe

45、ad=L-next;node=L;printf(n物品名稱 物品規(guī)格 生產(chǎn)廠家 出廠日期 單價(jià) 數(shù)量 金額n);while(head ) if(strcmp(head-wpmc ,name)=0&strcmp(head-wpgg ,guige)=0) printf(%-10s%-10s%-12s%-12s%-6d%-6d%-6dn,head-wpmc ,head-wpgg,head-sccj,head-ccrq,head-dj,head-sl,head-je); break; node=node-next; head=head-next; printf(確認(rèn)刪除嗎?(Y/N);getchar(

46、);scanf(%c,&c);while(1) if(c!=Y&c!=y&c!=N&c!=n) printf(請(qǐng)輸入正確的選擇(Y/N); getchar(); scanf(%c,&c); else break; if(c=N|c=n) ; else if(c=Y|c=y) if(!(fout=fopen(c:ckgl.txt,w)printf(打開文件失敗n);return; node-next=head-next; node=L-next ; while(node) fprintf(fout,%s %s %s %s %d %d %dn,node-wpmc ,node-wpgg ,node-

47、sccj ,node-ccrq ,node-dj ,node-sl ,node-je );node=node-next ; fclose(fout); system(pause); void delewpmc(PRO *L)PRO *head,*node,*temp;char nameMAX,c;FILE *fout;if(!(head=(PRO *)malloc(sizeof(PRO) /分配空間 return ;elsehead-next =NULL;if(!(temp=(PRO *)malloc(sizeof(PRO) /分配空間 return ;elsetemp-next =NULL;

48、 if(L-next =NULL)printf(文件中無任何物品信息n);system(pause);elsesystem(cls);head=L-next ;printf(nttt產(chǎn)品庫存記錄n);printf(物品名稱 物品規(guī)格 生產(chǎn)廠家 出廠日期 單價(jià) 數(shù)量 金額n);while(head )printf(%-10s%-10s%-12s%-12s%-6d%-6d%-6dn,head-wpmc ,head-wpgg,head-sccj,head-ccrq,head-dj,head-sl,head-je); head=head-next ;head=L-next;printf(請(qǐng)輸入你要?jiǎng)h除

49、的物品名稱:);scanf(%s,name);while(head&strcmp(head-wpmc ,name)!=0)head=head-next ;if (head=NULL)printf(文件中沒有該物品的數(shù)據(jù),無法進(jìn)行刪除操作n);elsehead=L-next;node=L;printf(n物品名稱 物品規(guī)格 生產(chǎn)廠家 出廠日期 單價(jià) 數(shù)量 金額n);while(head ) if(strcmp(head-wpmc ,name)=0)printf(%-10s%-10s%-12s%-12s%-6d%-6d%-6dn,head-wpmc ,head-wpgg,head-sccj,head-ccrq,head-dj,head-sl,head-je); head=head-next; printf(確認(rèn)刪除嗎?(Y/N);getchar();scanf(%c,&c);while(1) if(c!=Y&c!=y&c!=N&c!=n) printf(請(qǐng)輸入正確的選擇(Y/N); getchar(); scanf(%c,&c); else break; if(c=N|c=n) ; else if(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論