版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 信息學(xué)院</b></p><p><b> 課程設(shè)計Ⅰ報告</b></p><p> 課程名稱 C語言程序設(shè)計</p><p> 題目名稱 實(shí)驗(yàn)設(shè)備管理系統(tǒng) </p><p> 學(xué)生學(xué)院 信息學(xué)院_ </p><p><
2、b> 專業(yè)班級_ </b></p><p><b> 學(xué)生姓名 </b></p><p><b> ) </b></p><p> 指導(dǎo)教師_________ ____</p><p> 2011年12月21日</p><p>
3、<b> 目錄</b></p><p> 1. 設(shè)計目的與要求…………………………………………X</p><p> 1.1 題目與設(shè)計要求……………………………………X</p><p> 1.2 本程序涉及的知識點(diǎn)………………………………X </p><p> 2.功能設(shè)計………………………………………………X
4、</p><p> 2.1總體設(shè)計……………………………………………X</p><p> 2.2詳細(xì)設(shè)計……………………………………………X</p><p> 3. 程序?qū)崿F(xiàn)……………………………………………X</p><p> 3.1程序?qū)崿F(xiàn)時應(yīng)考慮的問題…………………………X</p><p> 3.2 X
5、X模塊核心代碼…………………………………X</p><p> 4.測試分析……………………………………………X</p><p> 4.1 測試結(jié)果及分析…………………………………X</p><p> 5. 總結(jié)…………………………………………………X</p><p> 參考文獻(xiàn)………………………………………………X</p>
6、<p> 1. 設(shè)計目的與要求</p><p><b> 設(shè)計目的:</b></p><p> 1. 鞏固和加深對C語言課程的基本知識的理解和掌握。</p><p> 2. 掌握C語言編程和程序調(diào)試的基本技能。</p><p> 3. 利用C語言進(jìn)行基本的軟件設(shè)計。</p><
7、p> 4. 掌握書寫程序設(shè)計說明文檔的能力。</p><p> 5. 提高運(yùn)用C語言解決實(shí)際問題的能力。</p><p><b> 要求:</b></p><p> 要能夠完成設(shè)備的錄入和修改,需要提供設(shè)備添加和修改操作;實(shí)現(xiàn)對設(shè)備進(jìn)行分類統(tǒng)計,需要提供排序操作;實(shí)現(xiàn)對設(shè)備的查詢需要提供查找操作;另外還要提供鍵盤式選擇菜單以實(shí)現(xiàn)功
8、能選擇。</p><p><b> 題目與設(shè)計要求</b></p><p> 題目:實(shí)驗(yàn)設(shè)備管理系統(tǒng)</p><p> 設(shè)計要求:整個系統(tǒng)被設(shè)計為實(shí)驗(yàn)設(shè)備信息輸入模塊、實(shí)驗(yàn)設(shè)備信息添加模塊、實(shí)驗(yàn)設(shè)備信息修改模塊、實(shí)驗(yàn)設(shè)備分類統(tǒng)計模塊和實(shí)驗(yàn)設(shè)備查詢模塊。</p><p><b> 本程序設(shè)計的知識點(diǎn)<
9、;/b></p><p><b> 設(shè)置的主要函數(shù)</b></p><p> void userinterface()/*菜單函數(shù)*/</p><p> void showall()/*顯示*/</p><p> void add()/*增加成員*/</p><p>
10、 void delete()/*刪除*/</p><p> void find()/*查找*/</p><p> void findchoice(int a) /*選擇查找方式函數(shù)*/</p><p> void modify()/*修改信息*/</p><p> void save()/*把信息保存到磁盤*
11、/</p><p> void esc()/*退出*/</p><p> void choices()/*為下一步操作做選擇*/</p><p> void load()/*讀數(shù)據(jù)*/</p><p><b> 2. 功能設(shè)計</b></p><p> 1)、能夠完成
12、對設(shè)備的錄入和修改</p><p> 2)、對設(shè)備進(jìn)行分類統(tǒng)計</p><p> 3)、設(shè)備的破損耗費(fèi)和遺損處理</p><p><b> 4)、設(shè)備的查詢</b></p><p> 5)、將設(shè)備信息保存到文件</p><p><b> 2.1 總體設(shè)計</b>&l
13、t;/p><p> 主要包含錄入、修改、統(tǒng)計、查詢、保存等五大模塊。</p><p><b> 2.2詳細(xì)設(shè)計</b></p><p><b> 流程圖</b></p><p> 3.1函數(shù)以及調(diào)用關(guān)系</p><p> void userinterface()/*菜
14、單函數(shù)*/</p><p> 1 2 3 4 5 6 </p><p> Break Break Break Break Break break </p><p> void showall();/*顯示函數(shù)*/</p><p>
15、;<b> 真</b></p><p> 假 真</p><p> void add()/*增加設(shè)備函數(shù)*/</p><p> 假 真</p><p> void delet()/*刪除函數(shù)*/<
16、;/p><p> 真 假</p><p> void find()/*查找函數(shù)*</p><p> void findchoice()</p><p> 真 假</p><p> void modify()
17、/*修改信息函數(shù)*/</p><p> 假 真</p><p> void save();/*把信息保存到磁盤*/</p><p> void load();/*讀數(shù)據(jù)*/</p><p><b> 3. 程序?qū)崿F(xiàn)</b></p>
18、<p> #include<stdio.h></p><p> #include<string.h></p><p> #include<stdlib.h></p><p> #include<process.h></p><p> #include<malloc.h&
19、gt;</p><p> #include<conio.h></p><p> #define LEN sizeof(struct addbook)</p><p> struct addbook</p><p><b> {</b></p><p> int record
20、;/*編號*/</p><p> char name[15];/*名稱*/</p><p> char kind[5];/*種類*/</p><p> char price[8];/*價格*/</p><p> unsigned long purtime;/*購買日期*/</p><p>
21、 unsigned long scrtime;/*報廢日期*/</p><p> char scrap[6]; /*是否報廢*/</p><p> struct addbook *next;/*指向結(jié)構(gòu)體數(shù)據(jù)類型的指針*/</p><p><b> };</b></p><p><b>
22、; FILE *fp;</b></p><p> struct addbook *p,*head=NULL,*s,*t,*p1,*p2;</p><p> void userinterface();/*菜單函數(shù)*/</p><p> void showall();/*顯示*/</p><p> void add(
23、);/*增加設(shè)備*/</p><p> void delet();/*刪除*/</p><p> void find();/*查找*/</p><p> void findchoice(int a); /*選擇查找方式函數(shù)*/</p><p> void modify();/*修改信息*/</p>
24、<p> void save();/*把信息保存到磁盤*/</p><p> void esc();/*退出*/</p><p> void choices();/*為下一步操作做選擇*/</p><p> void load();/*讀數(shù)據(jù)*/</p><p> struct addbook
25、 *del(struct addbook *head,int num);/*鏈表結(jié)點(diǎn)的刪除*/struct addbook *insert(struct addbook*head,struct addbook *stud);/*鏈表中結(jié)點(diǎn)的插入,stud為要插入的結(jié)點(diǎn)的指針*/</p><p> void starwindows()</p><p><b> { </
26、b></p><p> system("color 1f");</p><p><b> {</b></p><p> static char passwords[80],b[]="123";</p><p> int i=0,j;</p><p&
27、gt;<b> while(1)</b></p><p><b> {</b></p><p> printf("請輸入密碼\n\n");</p><p> for(j=0;j<strlen(b);j++)</p><p><b> {</b>
28、;</p><p> passwords[j]=getch();</p><p> printf("*");</p><p><b> }</b></p><p> if(strcmp(passwords,b)!=0)</p><p> printf("\r
29、口令錯誤,按任意鍵繼續(xù)");</p><p><b> else </b></p><p><b> break;</b></p><p><b> getch();</b></p><p><b> i++;</b></p>
30、<p> if(i==3)exit(0);</p><p><b> }</b></p><p> printf("ok");getch();</p><p><b> }</b></p><p><b> }</b></p&g
31、t;<p> void main()</p><p> { int n;</p><p> if((fp = fopen("d:\\01.txt","w+"))==NULL)</p><p><b> { </b></p><p> printf(&
32、quot;\n\n\t\t\t 文件不存在!\n");</p><p> if((fp = fopen("ghps.txt","wb"))==NULL)</p><p><b> { </b></p><p> printf("文件打開錯誤!\n");</p&
33、gt;<p><b> exit(0);</b></p><p><b> }</b></p><p><b> }</b></p><p> if(fgetc(fp)==-1)</p><p><b> { </b></p
34、><p> printf("\t\t***歡迎使用實(shí)驗(yàn)設(shè)備管理系統(tǒng)***\n");</p><p> printf("\n\t\t這里沒有信息,現(xiàn)在您必須添加信息.\n");</p><p> p=(struct addbook*)malloc(LEN);</p><p> printf("
35、;\n\t\t請輸入編號:");</p><p> scanf("%d",&p->record);</p><p> getchar();/*用來接受scaf里輸lm入的回車符號*/</p><p> printf("\n\t\t請輸入名稱:");</p><p>
36、gets(p->name);</p><p> printf("\n\t\t請輸入種類:");</p><p> gets(p->kind);</p><p> printf("\n\t\t請輸入價格:");</p><p> gets(p->price);</p>
37、<p> printf("\n\t\t請輸入購買日期(如20100101):");</p><p> scanf("%ld",&p->purtime);</p><p> getchar();</p><p> printf("\n\t\t請輸入報廢日期(如20100101):&q
38、uot;);</p><p> scanf("%ld",&p->scrtime);</p><p> getchar();</p><p> printf("\n\t\t請輸入是否報廢(S或F):");</p><p> gets(p->scrap);</p>
39、<p> p->next = NULL;</p><p><b> head = p;</b></p><p> fwrite(p,LEN,1,fp);/*將信息寫入磁盤*/</p><p> fclose(fp);</p><p> printf("\n\t\t\t添加成功!\n&q
40、uot;);</p><p> printf("\n\n\t\t!!!要進(jìn)行別的操作,請重新打開程序!!!\n");</p><p><b> exit(0);</b></p><p><b> }</b></p><p> rewind(fp); /* 重建文件指針 *
41、/</p><p><b> n=0;</b></p><p> p1=p2 = (struct addbook*)malloc(LEN);</p><p> fread(p1,LEN,1,fp);/*讀出文件中的信息*/</p><p> head = NULL;</p><p> w
42、hile(!feof(fp))</p><p><b> {</b></p><p><b> n=n+1;</b></p><p> if(n==1) head = p1;</p><p> else p2->next = p1;</p><p><b
43、> p2=p1;</b></p><p> p1 = (struct addbook*)malloc(LEN);</p><p> fread(p1,LEN,1,fp);</p><p><b> }</b></p><p> p2->next=NULL;</p><
44、p> fclose(fp);</p><p> userinterface();</p><p><b> save();</b></p><p><b> }</b></p><p> void userinterface()</p><p> { i
45、nt choice;</p><p> printf("\n\t\t ********************************************\n");</p><p> printf("\t\t\t 歡迎使用實(shí)驗(yàn)設(shè)備管理系統(tǒng)" );</p><p&
46、gt; printf("\n\t\t ********************************************\n");</p><p> printf("\n\n\t ******請選擇你的操作******\n");</p><p> printf("\t\t\t +---------------
47、----------------+");</p><p> printf("\t\t\t\t\t\t | 1 增加設(shè)備信息 |\n");</p><p> printf("\t\t\t | 2 查找設(shè)備信息 |\n");</p><p> prin
48、tf("\t\t\t | 3 顯示所有信息 |\n");</p><p> printf("\t\t\t | 4 刪除設(shè)備信息 |\n");</p><p> printf("\t\t\t | 5 修改設(shè)備信息 |\n");<
49、/p><p> printf("\t\t\t | 0 退出和保存 |\n");</p><p> printf("\t\t\t +-------------------------------+\n");</p><p> printf("\n\n\t\t\t\t\t\t\t制
50、作:蔣美幸\n\n\n");</p><p> Loop1:printf("請輸入您的選擇:(0-5):");</p><p> scanf("%d",&choice);</p><p> getchar();</p><p> if(choice>=0&&
51、;choice<6)</p><p><b> { </b></p><p> switch(choice)</p><p><b> {</b></p><p><b> case 1:</b></p><p><
52、b> add();</b></p><p><b> break;</b></p><p><b> case 2:</b></p><p> system("cls");</p><p><b> find();</b><
53、/p><p><b> break;</b></p><p><b> case 3:</b></p><p> system("cls");</p><p> showall();</p><p><b> break;</b>
54、;</p><p><b> case 4:</b></p><p> system("cls"); </p><p> void starwindows();</p><p><b> delet();</b></p><p><b>
55、 break;</b></p><p><b> case 5:</b></p><p> system("cls"); </p><p> void starwindows();</p><p><b> modify();</b></p>
56、<p><b> break;</b></p><p><b> case 0:</b></p><p> system("cls");</p><p><b> esc();</b></p><p><b> }</b&
57、gt;</p><p><b> }</b></p><p><b> else</b></p><p><b> { </b></p><p> printf("輸入錯誤,請重新選擇!\n");</p><p> go
58、to Loop1;</p><p><b> }</b></p><p><b> }</b></p><p> void add()</p><p><b> { </b></p><p> struct addbook *stu;<
59、/p><p> stu=(struct addbook*)malloc(LEN);</p><p> printf("\n\n\t\t\t當(dāng)輸入的設(shè)備編號為0時,停止添加!!!");</p><p> printf("\n\t\t請輸入編號:");</p><p> scanf("%d&q
60、uot;,&stu->record);</p><p> getchar();/*用來接受scanf里輸入的回車符號*/</p><p> printf("\n\t\t請輸入名稱:");</p><p> gets(stu->name);</p><p> printf("\n\t
61、\t請輸入種類:");</p><p> gets(stu->kind);</p><p> printf("\n\t\t請輸入價格:");</p><p> gets(stu->price);</p><p> printf("\n\t\t請輸入購買日期(如20100101):&q
62、uot;);</p><p> scanf("%ld",&stu->purtime);</p><p> getchar();</p><p> printf("\n\t\t請輸入報廢日期(如20100101):");</p><p> scanf("%ld",
63、&stu->scrtime);</p><p> getchar();</p><p> printf("\n\t\t請輸入是否報廢(S或F):");</p><p> gets(stu->scrap);</p><p> stu->next = NULL;</p><
64、p> while(stu->record!=0)</p><p><b> { </b></p><p> head=insert(head,stu);</p><p> printf("\n\n\t\t******添加成功******!!!\n");</p><p> st
65、u=(struct addbook*)malloc(LEN);</p><p> printf("\n\n\t\t\t當(dāng)輸入的設(shè)備編號為0時,停止添加!!!");</p><p> printf("\n\t\t請輸入編號:");</p><p> scanf("%d",&stu->rec
66、ord);</p><p> getchar();/*用來接受scanf里輸入的回車符號*/</p><p> printf("\n\t\t請輸入名稱:");</p><p> gets(stu->name);</p><p> printf("\n\t\t請輸入種類:");</
67、p><p> gets(stu->kind);</p><p> printf("\n\t\t請輸入價格:");</p><p> gets(stu->price);</p><p> printf("\n\t\t請輸入購買日期(如20100101):");</p><
68、;p> scanf("%ld",&stu->purtime);</p><p> getchar();</p><p> printf("\n\t\t請輸入報廢日期(如20100101):");</p><p> scanf("%ld",&stu->scrtime)
69、;</p><p> getchar();</p><p> printf("\n\t\t請輸入是否報廢(S或F):");</p><p> gets(stu->scrap);</p><p> stu->next = NULL;</p><p><b> }<
70、/b></p><p> printf("\n\n\t\t\t添加結(jié)束!!!\n");</p><p> choices();</p><p><b> }</b></p><p> void find() </p><p><b>
71、 {</b></p><p><b> int i;</b></p><p> printf("\n\t\t請選擇查找方式:\n");</p><p> printf("\t\t1.按編號查找。\n");</p><p> printf("\t\t2
72、.按名稱查找。\n");</p><p> printf("\t\t3.按種類查找。\n");</p><p> printf("\t\t4.返回菜單。\n");</p><p> printf("\t\t0.退出。\n");</p><p> printf(&qu
73、ot;\n\n\t******請輸入您的選擇******\n");</p><p> scanf("%d",&i);</p><p> getchar();</p><p> if(i>=0&&i<5)</p><p><b> {</b><
74、;/p><p><b> switch(i)</b></p><p><b> {</b></p><p><b> case 1:</b></p><p><b> case 2:</b></p><p> case 3:f
75、indchoice(i);break;</p><p> case 4:userinterface();break;</p><p> case 0:esc();break;</p><p><b> }</b></p><p><b> }</b></p><p>
76、 else {printf("\n\n\t\t\t選擇錯誤!!!\n");choices();}</p><p><b> }</b></p><p> void showall() </p><p><b> {</b></p><p>&
77、lt;b> s = head;</b></p><p> if(head==NULL)</p><p><b> {</b></p><p> printf("\n\t\t!!!這里沒有信息!!!\n");</p><p><b> goto LP;</b
78、></p><p><b> }</b></p><p> printf("\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");</p><p> printf("編號\t名稱\t種類\t
79、價格\t購買日期\t報廢日期\t是否報廢");</p><p> printf("\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");</p><p> do{printf("%-8d%-8s%-8s%-8s%ld
80、%ld\t\t%-8s\n",s->record,s->name,s->kind,s->price,s->purtime,s->scrtime,s->scrap);</p><p> s = s->next;</p><p> }while(s!=NULL);</p><p> LP:choices()
81、;</p><p><b> }</b></p><p> void delet() /* 刪除函數(shù) */</p><p><b> {</b></p><p><b> int num;</b></p>
82、<p> printf("\n\n請輸入要刪除的設(shè)備編號。當(dāng)輸入編號為0時停止刪除操作。\n");</p><p> scanf("%d",&num);</p><p> getchar();</p><p> while(num!=0)</p><p> {head=de
83、l(head,num);</p><p> printf("\n\n請輸入要刪除的設(shè)備編號。當(dāng)輸入編號為0時停止刪除操作。\n");</p><p> scanf("%d",&num);</p><p> getchar();</p><p><b> }</b>&
84、lt;/p><p> printf("\n\n\t\t**********刪除結(jié)束**********\n");</p><p> choices();</p><p><b> }</b></p><p> void modify() /*
85、 修改函數(shù) */</p><p><b> {</b></p><p><b> int num;</b></p><p> printf("請輸入要修改的設(shè)備編號\n");</p><p> scanf("%d",&num);</p
86、><p> getchar();</p><p><b> p=head;</b></p><p><b> do</b></p><p><b> {</b></p><p> if(p->record==num )</p>
87、<p> if(p->next==NULL) printf("找不到該編號的設(shè)備,請確認(rèn)無誤以后再重新輸入。\n");</p><p><b> else</b></p><p><b> {</b></p><p> printf("\n\t\t請輸入新的名稱:&q
88、uot;);</p><p> gets(p->name);</p><p> printf("\n\t\t請輸入新的種類:");</p><p> gets(p->kind);</p><p> printf("\n\t\t請輸入新的價格:");</p><p&
89、gt; gets(p->price);</p><p> printf("\n\t\t請輸入新的購買日期(如20100101):");</p><p> scanf("%ld",&p->purtime);</p><p> getchar();</p><p> print
90、f("\n\t\t請輸入新的報廢日期(如20100101):");</p><p> scanf("%ld",&p->scrtime);</p><p> getchar();</p><p> printf("\n\t\t請輸入是否報廢(S或F):");</p><
91、p> gets(p->scrap);</p><p> printf("\n\t\t修改成功!\n");</p><p> choices();</p><p><b> }</b></p><p> else p=p->next;</p><p>
92、<b> }</b></p><p> while(p!=NULL);</p><p> printf("\t\t!!!沒有這個編號的信息,請核對后再輸入!!!\n\n");</p><p> choices();</p><p><b> }</b></p>
93、;<p> void esc()</p><p> { save();</p><p> printf("\n\n\n\t\t\t 謝謝使用本實(shí)驗(yàn)設(shè)備管理系統(tǒng)!!!\n");</p><p><b> exit(0);</b></p><p><b> }&l
94、t;/b></p><p> struct addbook *del(struct addbook *head,int num)/*鏈表結(jié)點(diǎn)刪除*/</p><p> {struct addbook *h1,*h2;</p><p> if(head==NULL) {printf("鏈表為空鏈表。\n");goto Loop;<
95、;/p><p><b> }</b></p><p><b> h1=head;</b></p><p> while(num!=h1->record&&h1->next!=NULL)/*p1指向的不是要刪除的結(jié)點(diǎn),并且后面還有結(jié)點(diǎn)。*/</p><p><b&g
96、t; {</b></p><p> h2=h1;h1=h1->next;</p><p> }/*p1后移一個結(jié)點(diǎn)*/</p><p> if(num==h1->record)/*找到了*/</p><p><b> {</b></p><p> if(
97、h1==head) {printf("\n\n\n\t\t這是遮里最后一個信息,不能刪除!!!\n\n\t如果你真的要刪除此信息,請?zhí)砑悠渌畔⒁院笤賱h除.\n\n");goto Loop;}/*這是p1是首結(jié)點(diǎn)的情況*/</p><p> else {h2->next=h1->next;printf("\n\n\t\t******刪除成功******!!!\n&qu
98、ot;);}/*否則將下一結(jié)點(diǎn)的地址賦給前一結(jié)點(diǎn)地址*/</p><p><b> }</b></p><p> else printf("\n\n\t\t找不到該結(jié)點(diǎn)。\n");</p><p> Loop:return(head);</p><p><b> }</b>
99、;</p><p> struct addbook *insert(struct addbook*head,struct addbook *stud)/*結(jié)點(diǎn)插入,插入時是按編號大小插入*/</p><p> {struct addbook *g0,*g1,*g2;</p><p><b> g1=head;</b></p>
100、<p><b> g0=stud;</b></p><p> if(head==NULL)/*原來的鏈表是空表*/</p><p> {head=g0;g0->next=NULL;}/*使p0指向的結(jié)點(diǎn)作為頭結(jié)點(diǎn)*/</p><p><b> else</b></p><
101、;p><b> {</b></p><p> while(g0->record>g1->record&&g1->next!=NULL)</p><p><b> {</b></p><p><b> g2=g1;</b></p>
102、<p> g1=g1->next;}/*p1后移一個結(jié)點(diǎn)*/</p><p> if(g0->record==g1->record)</p><p><b> {</b></p><p> printf("\n\t\t\t編號重復(fù)!請核對后再輸入!!!\n\n");choices();&
103、lt;/p><p><b> }</b></p><p><b> else;</b></p><p> if(g0->record<g1->record)</p><p><b> {</b></p><p> if(h
104、ead==g1) head=g0;/*插到原來第一個結(jié)點(diǎn)之前*/</p><p> else g2->next=g0;/*插到p2指向的結(jié)點(diǎn)之后*/</p><p> g0->next=g1;</p><p><b> }</b></p><p><b> else</b><
105、;/p><p> {g1->next=g0;g0->next=NULL;/*插到最后的結(jié)點(diǎn)后*/</p><p><b> }</b></p><p><b> }</b></p><p> return(head);</p><p><b>
106、 }</b></p><p> void save()/*保存文件*/</p><p> {fp=fopen("ghps.txt","w");</p><p><b> s = head;</b></p><p> do{ </p>
107、;<p> fwrite(s,LEN,1,fp);</p><p> s = s->next;</p><p><b> }</b></p><p> while(s!=NULL);</p><p> fclose(fp);</p><p><b> }&
108、lt;/b></p><p> void findchoice(int a)</p><p> {int num,j=0,i=0;</p><p> char findname1[20];</p><p> char findname2[20];</p><p><b> t=head;&l
109、t;/b></p><p><b> if(a==1)</b></p><p> {printf("\n\n\t\t請輸入要查找的編號。\n");</p><p> scanf("%d",&num);</p><p> getchar();</p&g
110、t;<p> system("cls");</p><p> while(t!=NULL)</p><p><b> {</b></p><p> if(t->record==num)</p><p><b> {</b></p&g
111、t;<p><b> if(i==0)</b></p><p><b> {</b></p><p> printf("\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");</p
112、><p> printf("編號\t名稱\t種類\t價格\t購買日期\t報廢日期\t是否報廢");</p><p> printf("\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");</p><p><b&
113、gt; i=1;</b></p><p><b> }</b></p><p> printf("%-8d%-8s%-8s%-8s%-ld %-ld\t\t%-8s\n",t->record,t->name,t->kind,t->price,t->purtime,t->scrti
114、me,t->scrap);</p><p><b> j=1;</b></p><p><b> }</b></p><p> t=t->next;</p><p><b> }</b></p><p><b> if(!
115、j)</b></p><p><b> {</b></p><p> printf("無此設(shè)備信息或是輸入錯誤,請核對后重新輸入。\n");</p><p><b> }</b></p><p><b> }</b></p>
116、<p><b> if(a==2)</b></p><p> {printf("\n\n\t\t請輸入要查找的設(shè)備名稱。\n");</p><p> gets(findname1);</p><p> system("cls");</p><p> whi
117、le(t!=NULL)</p><p><b> {</b></p><p> if(strcmp(t->name,findname1)==0)</p><p><b> {</b></p><p><b> if(i==0)</b></p&g
118、t;<p><b> {</b></p><p> printf("\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");</p><p> printf("編號\t名稱\t種類\t價格\t購買日
119、期\t報廢日期\t是否報廢");</p><p> printf("\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");</p><p><b> i=1;</b></p><p><b>
120、 }</b></p><p> printf("%-8d%-8s%-8s%-8s%-ld %-ld\t\t%-8s\n",t->record,t->name,t->kind,t->price,t->purtime,t->scrtime,t->scrap);</p><p><b> j
121、=1;</b></p><p><b> }</b></p><p> t=t->next;</p><p><b> }</b></p><p><b> if(!j)</b></p><p><b> {<
122、/b></p><p> printf("無此設(shè)備信息或是輸入錯誤,請核對后重新輸入。\n");</p><p><b> }</b></p><p><b> }</b></p><p><b> if(a==3)</b></p>
123、<p><b> {</b></p><p> printf("\n\n\t\t請輸入要查找的設(shè)備種類。\n");</p><p> gets(findname2);</p><p> system("cls");</p><p> while(t!=N
124、ULL)</p><p><b> {</b></p><p> if(strcmp(t->kind,findname2)==0)</p><p><b> {</b></p><p><b> if(i==0)</b></p><
125、;p><b> {</b></p><p> printf("\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");</p><p> printf("編號\t名稱\t種類\t價格\t購買日期\t報廢日期
126、\t是否報廢");</p><p> printf("\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");</p><p><b> i=1;</b></p><p><b> }<
127、/b></p><p> printf("%-8d%-8s%-8s%-8s%-ld %-ld\t\t%-8s\n",t->record,t->name,t->kind,t->price,t->purtime,t->scrtime,t->scrap);</p><p><b> j=1;<
128、/b></p><p><b> }</b></p><p> t=t->next;</p><p><b> }</b></p><p><b> if(!j)</b></p><p><b> {</b>&
129、lt;/p><p> printf("無此設(shè)備信息或是輸入錯誤,請核對后重新輸入。\n");</p><p><b> }</b></p><p><b> }</b></p><p> choices();</p><p><b> }&
130、lt;/b></p><p> void choices()</p><p> {int num_1;</p><p> Loop2:printf("\n\n\t\t\t請選擇您的下一步操作!!!\n");</p><p> printf("\n\t\t\t1.回到主菜單。\n");&l
131、t;/p><p> printf("\n\t\t\t2.退出并保存。\n");</p><p> scanf("%d",&num_1);</p><p> getchar();</p><p> switch(num_1)</p><p><b> {&
132、lt;/b></p><p><b> case 1:</b></p><p> system("cls");</p><p> userinterface();</p><p><b> break;</b></p><p><b&g
133、t; case 2:</b></p><p> system("cls");</p><p><b> esc();</b></p><p><b> break;</b></p><p><b> default:</b></p
134、><p> system("cls");</p><p> printf("輸入錯誤!!!\n");</p><p> goto Loop2;</p><p><b> }</b></p><p><b> }</b></p
135、><p> 3.1程序?qū)崿F(xiàn)時應(yīng)考慮的問題</p><p> 由于疏忽,沒有將密碼函數(shù)鏈接到主函數(shù)中,使得密碼功能沒有體現(xiàn),及時調(diào)整。顯示內(nèi)容與表頭進(jìn)行調(diào)整對齊,由于顯示函數(shù)和查找函數(shù)都有顯示功能,需要同時調(diào)整。</p><p><b> 3.2結(jié)構(gòu)的應(yīng)用</b></p><p><b> If…else結(jié)構(gòu)
136、</b></p><p> if(strcmp(passwords,b)!=0)</p><p> printf("\r口令錯誤,按任意鍵繼續(xù)");</p><p><b> else </b></p><p><b> break;</b></p>
137、;<p><b> switch結(jié)構(gòu)</b></p><p> switch(choice)</p><p><b> {</b></p><p><b> case 1:</b></p><p><b> add();</b>
138、</p><p><b> break;</b></p><p><b> case 2:</b></p><p> system("cls");</p><p><b> find();</b></p><p><b&
139、gt; break;</b></p><p><b> case 3:</b></p><p> system("cls");</p><p> showall();</p><p><b> break;</b></p><p>&
140、lt;b> case 4:</b></p><p> system("cls");</p><p><b> delet();</b></p><p><b> break;</b></p><p><b> case 5:</b>
141、;</p><p> system("cls");</p><p><b> modify();</b></p><p><b> break;</b></p><p><b> case 0:</b></p><p> s
142、ystem("cls");</p><p><b> esc();</b></p><p><b> }</b></p><p><b> while結(jié)構(gòu)</b></p><p> while(stu->record!=0)</p>
143、<p><b> { </b></p><p> head=insert(head,stu);</p><p> printf("\n\n\t\t******添加成功******!!!\n");</p><p> stu=(struct addbook*)malloc(LEN);</p>
144、<p> printf("\n\n\t\t\t當(dāng)輸入的設(shè)備編號為0時,停止添加!!!");</p><p> printf("\n\t\t請輸入編號:");</p><p> scanf("%d",&stu->record);</p><p> getchar();/
145、*用來接受scanf里輸入的回車符號*/</p><p> printf("\n\t\t請輸入名稱:");</p><p> gets(stu->name);</p><p> printf("\n\t\t請輸入種類:");</p><p> gets(stu->kind);<
146、/p><p> printf("\n\t\t請輸入價格:");</p><p> gets(stu->price);</p><p> printf("\n\t\t請輸入購買日期(如20100101):");</p><p> scanf("%ld",&stu-&g
147、t;purtime);</p><p> getchar();</p><p> printf("\n\t\t請輸入報廢日期(如20100101):");</p><p> scanf("%ld",&stu->scrtime);</p><p> getchar();</p&
148、gt;<p> printf("\n\t\t請輸入是否報廢(S或F):");</p><p> gets(stu->scrap);</p><p> stu->next = NULL;</p><p><b> }</b></p><p> do…while結(jié)構(gòu)&l
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程設(shè)計報告--實(shí)驗(yàn)設(shè)備管理系統(tǒng)設(shè)計
- 實(shí)驗(yàn)室設(shè)備管理系統(tǒng)課程設(shè)計
- 實(shí)驗(yàn)室設(shè)備管理系統(tǒng)課程設(shè)計
- javaee課程設(shè)計--實(shí)驗(yàn)室設(shè)備管理系統(tǒng)
- 資產(chǎn)設(shè)備管理系統(tǒng)課程設(shè)計實(shí)驗(yàn)報告
- 實(shí)驗(yàn)室設(shè)備管理系統(tǒng)(課程設(shè)計報告)
- c語言課程設(shè)計報告力學(xué)實(shí)驗(yàn)設(shè)備管理系統(tǒng)
- 個人課程設(shè)計報告—實(shí)驗(yàn)室設(shè)備管理系統(tǒng)
- c++課程設(shè)計---實(shí)驗(yàn)室設(shè)備管理系統(tǒng)
- 課程設(shè)計--設(shè)備管理系統(tǒng)實(shí)現(xiàn)—管理模塊
- c語言課程設(shè)計--- 設(shè)備管理系統(tǒng)
- java課程設(shè)計報告-設(shè)備管理系統(tǒng)
- 操作系統(tǒng)課程設(shè)計(設(shè)備管理)
- 軟件工程課程設(shè)計實(shí)驗(yàn)室設(shè)備管理系統(tǒng)
- 實(shí)驗(yàn)室設(shè)備管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計
- c++課程設(shè)計報告---設(shè)備管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計-設(shè)備管理系統(tǒng)
- 設(shè)備管理系統(tǒng) 數(shù)據(jù)庫課程設(shè)計
- c++課程設(shè)計報告--公司設(shè)備管理系統(tǒng)
- 網(wǎng)絡(luò)數(shù)據(jù)庫課程設(shè)計--設(shè)備管理系統(tǒng)
評論
0/150
提交評論