版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 課程設(shè)計(jì)報(bào)告</b></p><p> 題 目:圖書信息管理系統(tǒng)</p><p><b> 2013年7月9日</b></p><p><b> 目 錄</b></p><p> 一、設(shè)計(jì)任務(wù)書………………………………………………
2、…………3</p><p> 二、本組課題及本人任務(wù)………………………………………………3</p><p> 三、程序功能簡(jiǎn)介………………………………………………………3</p><p> 四、主體內(nèi)容……………………………………………………………3</p><p> 1.設(shè)計(jì)分析………………………………………………………………………
3、3</p><p> 2.程序結(jié)構(gòu)………………………………………………………………………4</p><p> 3.各模塊的功能及程序說(shuō)明……………………………………………………5</p><p> 4. 源程序………………………………………………………………………5</p><p> 5.操作方法…………………………………………………
4、………………….16</p><p> 6.試驗(yàn)結(jié)果……………………………………………………………………16</p><p> 7.設(shè)計(jì)體會(huì)…………………………………………………………………….</p><p> 五、附錄………………………………………………………………20</p><p> 1.流程圖…………………………………………
5、……………………………20</p><p> 2.過(guò)程列表……………………………………………………………………24</p><p><b> 一、設(shè)計(jì)任務(wù)書</b></p><p><b> 1.目的</b></p><p> 1)復(fù)習(xí)、鞏固C語(yǔ)言的基礎(chǔ)知識(shí),進(jìn)一步加深對(duì)C語(yǔ)言的理解和掌握。
6、</p><p> 2)課程設(shè)計(jì)為學(xué)生提供了一個(gè)既動(dòng)手又動(dòng)腦,獨(dú)立實(shí)踐的機(jī)會(huì),將課本上的理論知識(shí)和實(shí)際有機(jī)的結(jié)合起來(lái),鍛煉學(xué)生的分析解決實(shí)際問(wèn)題的能力。提高學(xué)生適應(yīng)實(shí)際,實(shí)踐編程的能力。</p><p> 3)培養(yǎng)學(xué)生在項(xiàng)目開發(fā)中團(tuán)隊(duì)合作精神、創(chuàng)新意識(shí)及能力。</p><p><b> 2.要求:</b></p><p
7、> 1、對(duì)系統(tǒng)進(jìn)行功能模塊分析、控制模塊分析正確,符合課題要求,實(shí)現(xiàn)相應(yīng)功能;可以加以其他功能或修飾,使程序更加完善、合理。</p><p> 2、系統(tǒng)設(shè)計(jì)要實(shí)用,編程簡(jiǎn)練,可用,功能全面。</p><p> 3、說(shuō)明書、流程圖要清楚。</p><p> 4、記錄設(shè)計(jì)情況(備查,也為編寫設(shè)計(jì)說(shuō)明書作好準(zhǔn)備)。</p><p>
8、 5、要求采用模塊化程序設(shè)計(jì)方法,及鋸齒型書寫格式,要求上機(jī)調(diào)試通過(guò)和按設(shè)計(jì)報(bào)告格式。</p><p> 6、設(shè)計(jì)上交內(nèi)容:設(shè)計(jì)報(bào)告一份(按格式書寫);源程序一份,能編譯成可執(zhí)行文件并能正常運(yùn)行。</p><p> 二、本組課題及本人任務(wù)</p><p> 課題:圖書信息管理系統(tǒng)設(shè)計(jì)</p><p> 圖書信息包括:登錄號(hào)、書名、作者
9、名、分類號(hào)、出版單位、出版時(shí)間、價(jià)格等。試設(shè)計(jì)一圖書信息管理系統(tǒng),使之能提供以下功能:</p><p> 1.系統(tǒng)以菜單方式工作。</p><p> 2.圖書信息錄入功能(圖書信息用文件保存)--輸入。</p><p> 3.圖書信息瀏覽功能--輸出。</p><p> 4.查詢和排序功能:(至少一種查詢方式)--算法。</p&
10、gt;<p><b> a. 按書名查。</b></p><p><b> b.按作者名查詢。</b></p><p> 本人任務(wù):負(fù)責(zé)設(shè)計(jì)和編寫圖書信息管理系統(tǒng)的修改圖書信息部分。</p><p><b> 三、程序功能簡(jiǎn)介</b></p><p>
11、本系統(tǒng)是以visual C++ 6.0 環(huán)境下用C語(yǔ)言開發(fā)的一個(gè)圖書管理系統(tǒng)。本系統(tǒng)具有圖書信息錄入、瀏覽、刪除、修改、查找(包括按書名、作者查找)功能。其中圖書信息包括登錄號(hào)、書名、作者名、分類號(hào)、出版單位、出版時(shí)間、價(jià)格,并且對(duì)信息以文件形式儲(chǔ)存。另外本系統(tǒng)具備實(shí)用性的同時(shí)代碼邏輯謹(jǐn)慎清晰易懂,且界面美觀。</p><p><b> 四、主體內(nèi)容</b></p><
12、p><b> 1.設(shè)計(jì)分析</b></p><p> 本系統(tǒng)共分為一個(gè)主頁(yè)面模塊(主函數(shù)部分),五個(gè)功能模塊(功能函數(shù))分別為圖書信息錄入、圖書信息瀏覽、圖書信息查詢、圖書信息刪除、圖書信息修改。設(shè)計(jì)時(shí)應(yīng)該先寫好主函數(shù)、定義好全局變量和功能函數(shù),再對(duì)五個(gè)功能函數(shù)進(jìn)行設(shè)計(jì)。在每個(gè)功能函數(shù)和主函數(shù)應(yīng)中加入控制條件使用戶可以隨時(shí)退出系統(tǒng),并在用戶輸入指令錯(cuò)誤的時(shí)候給予提醒和退出選項(xiàng)。小組
13、中的五個(gè)人分別承擔(dān)一個(gè)功能模塊進(jìn)行設(shè)計(jì)。并在每個(gè)人設(shè)計(jì)完成后通過(guò)主函數(shù)進(jìn)行鏈接調(diào)試正確后方為完成。</p><p> 2.程序結(jié)構(gòu)(流程圖)</p><p> 3.各模塊的功能及程序說(shuō)明</p><p> A、錄入模塊:本模塊主要執(zhí)行信息錄入功能。</p><p> 信息錄入是為了把新來(lái)的圖書進(jìn)行進(jìn)庫(kù)操作,也就是將新到來(lái)的圖書的信息放
14、入數(shù)據(jù)庫(kù)當(dāng)中,方便圖書管理員的管理和操作,幫助圖書管理員更好的管理圖書的進(jìn)庫(kù)出庫(kù)的情況,錄入模塊主要是方便了圖書管理員對(duì)于圖書的更好的管理,有助于挺高圖書管理員的工作效率。</p><p> B、瀏覽模塊:本模塊主要是執(zhí)行把已有信息輸出瀏覽功能。</p><p> 該模塊的主要作用是為了對(duì)于所有圖書信息的瀏覽,全方位的操作和宏觀上的管理,對(duì)于圖書館已有的圖書可以有一個(gè)宏觀上的認(rèn)識(shí),是圖
15、書管理員做到了心中有數(shù),在總體上把握?qǐng)D書的所有信息,方便以后的查詢、刪除和修改。瀏覽模塊對(duì)于增強(qiáng)圖書管理員的宏觀把握提供了一個(gè)有效的途徑和方法,是圖書館里系統(tǒng)的關(guān)鍵所在。</p><p> C、查詢模塊:本模塊主要是執(zhí)行按書名和按作者名查找圖書信息的功能。眾所周知,如果圖書管理員想找到某本圖書或者是讀者希望找到某本圖書,應(yīng)該對(duì)其進(jìn)行查詢操作,查詢功能是圖書管理系統(tǒng)的關(guān)鍵一環(huán),如果沒有查詢功能,該圖書管理系統(tǒng)就是
16、一個(gè)欠缺的甚至不完整的系統(tǒng),查詢系統(tǒng)不僅方便了圖書管理人員而且方便了讀者對(duì)于查詢圖書的有效性和連貫性。</p><p> D、刪除模塊:本模塊主要執(zhí)行刪除圖書信息的功能。</p><p> 刪除模塊是圖書管理系統(tǒng)的重中之重,刪除模塊的功能是為了當(dāng)圖書館發(fā)生某種意外因素或者是對(duì)圖書進(jìn)行了更新,造成了某種圖書的丟失或缺少,所以在此基礎(chǔ)上要對(duì)于圖書數(shù)據(jù)的更新和圖書信息的重新整理,刪除模塊是對(duì)
17、于圖書管理系統(tǒng)的補(bǔ)充,是圖書管理系統(tǒng)的“增、刪、改、查”的功能更加的完善,因此上來(lái)說(shuō),刪除模塊也是圖書管理系統(tǒng)最重要的和最關(guān)鍵的一環(huán)。</p><p> E、修改模塊(本人設(shè)計(jì)模塊):本模塊主要執(zhí)行圖書信息修改功能。在用戶選擇該功能后。首先,系統(tǒng)會(huì)彈出已存在信息列表并讓用戶選擇所要修改的信息項(xiàng)目。然后,當(dāng)用戶選定要修改的信息后會(huì)彈出信息目錄,用戶需按順序依次修改信息內(nèi)容。最好當(dāng)所有信息項(xiàng)目都修改完成之后,按回車
18、鍵會(huì)在窗口上輸出修改后的內(nèi)容。</p><p><b> 4. 源程序</b></p><p> #include<stdio.h></p><p> #include<string.h></p><p> #include<stdlib.h></p><p
19、> #include<conio.h></p><p> #define MAX 100</p><p> struct Student</p><p><b> {</b></p><p> int num;/*登錄號(hào)*/</p><p> char name[10
20、0];/*書名*/</p><p> char author[100];/*作者名*/</p><p> char fn[100];/*分類號(hào)*/</p><p> char place[100];/*出版單位*/</p><p> char day[100];/*出版時(shí)間*/</p><p> float
21、money;/*價(jià)格*/</p><p> }stu[MAX];</p><p> main()/*主函數(shù)*/</p><p><b> {</b></p><p> void Input();/*輸入*/</p><p> void Display();/*輸出*/</p>
22、<p> void Find();/*查找*/</p><p> void Modify();/*刪除*/</p><p> void Change();/*修改*/</p><p><b> int n;</b></p><p><b> for(;;)</b></p
23、><p><b> {</b></p><p> printf("\n");</p><p> printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");</p><p> printf("※
24、 ※\n");</p><p> printf("※ 歡迎來(lái)到圖書信息管理系統(tǒng) ※\n");</p><p> printf("※
25、 ※\n");</p><p> printf("※ ※\n");</p><p> printf("※ 主菜單
26、 ※\n");</p><p> printf("※ ※\n");</p><p> printf("※ ▲1.圖書信息錄入 ▲ ※\n");
27、 </p><p> printf("※ ※\n");</p><p> printf("※ ▲2.圖書信息瀏覽 ▲ ※\n");</p>
28、;<p> printf("※ ※\n");</p><p> printf("※ ▲3.圖書信息查詢 ▲ ※\n"); </p><
29、;p> printf("※ ※\n");</p><p> printf("※ ▲4.圖書信息刪除 ▲ ※\n");</p><p> printf(&
30、quot;※ ※\n");</p><p> printf("※ ▲5.圖書信息修改 ▲ ※\n");</p><p> printf("※
31、 ※\n");</p><p> printf("※ ▲6.退出系統(tǒng) ▲ ※\n"); </p><p> printf("※
32、 ※\n");</p><p> printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n\n");</p><p> printf("請(qǐng)輸入選擇項(xiàng)(1-6):");</p><p> scanf("%d&q
33、uot;,&n);</p><p> printf("\n\n\n\n");</p><p> if(n>0&&n<7)</p><p><b> {</b></p><p><b> switch(n)</b></p>
34、<p><b> {</b></p><p> case 1:Input();break;</p><p> case 2:Display();break;</p><p> case 3:Find();break;</p><p> case 4:Modify();break;</p>
35、<p> case 5:Change();break; </p><p> case 6:printf("※※※※※※※※※※※※※※※※※※※※※※※※\n");</p><p> printf("※ ※\n");</p><
36、p> printf("※ 謝謝使用! ※\n");</p><p> printf("※ 再見! ※\n");</p><p> printf("※
37、 ※\n");</p><p> printf("※※※※※※※※※※※※※※※※※※※※※※※※\n");</p><p> exit(0); </p><p><b> }</b></p><p><b> }</b&
38、gt;</p><p><b> else </b></p><p><b> {</b></p><p> printf("※※※※※※※※※※※※※※※※※※※※※※※※\n");</p><p> printf("※
39、 ※\n");</p><p> printf("※ 輸入錯(cuò)誤! ※\n");</p><p> printf("※ 請(qǐng)退出! ※\n");</p&g
40、t;<p> printf("※ ※\n");</p><p> printf("※※※※※※※※※※※※※※※※※※※※※※※※\n");</p><p><b> break;</b></p><p&
41、gt;<b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> void Find()/*查找*/</p><p><b> { </b></p><p>&l
42、t;b> FILE *fp;</b></p><p><b> int i;</b></p><p> int choose,t;</p><p> char ans[100];</p><p><b> do</b></p><p><b&
43、gt; {</b></p><p> printf("1.按書名查找\n");</p><p> printf("2.按作者名查找\n");</p><p> printf("返回主菜單(其他數(shù)字)\n");</p><p> scanf("%d&qu
44、ot;,&choose);</p><p> if(choose==1)</p><p><b> {</b></p><p> printf("輸入所查書名:\n");</p><p> scanf("%s",ans);</p><p>&
45、lt;b> t=-1;</b></p><p> if(choose==1)</p><p><b> {</b></p><p> for(i=0;i<MAX;i++) if(strcmp(ans,stu[i].name)==0) </p><p><b> {</b&
46、gt;</p><p><b> t=i;</b></p><p> fp=fopen("student","rb");</p><p> for(i=0;fread(&stu[i],sizeof(struct Student),1,fp)==1;i++)</p><p&
47、gt; printf("%d %s %s %s %s %s %f\n",stu[t].num,stu[t].name,stu[t].author,stu[t].fn,stu[t].place,stu[t].day,stu[t].money);</p><p><b> }</b></p><p><b> }</b>&l
48、t;/p><p> if(t==-1) printf("不存在該信息\n");</p><p><b> }</b></p><p> else if(choose==2)</p><p><b> {</b></p><p> printf(&qu
49、ot;輸入所查作者名:\n");</p><p> scanf("%s",ans);</p><p><b> t=-1;</b></p><p> if(choose==2)</p><p><b> {</b></p><p> f
50、or(i=0;i<MAX;i++)</p><p> if(strcmp(ans,stu[i].author)==0)</p><p><b> { t=i;</b></p><p> fp=fopen("student","rb");</p><p> for(i=
51、0;fread(&stu[i],sizeof(struct Student),1,fp)==1;i++)</p><p> printf("%d %s %s %s %s %s %f\n",stu[t].num,stu[t].name,stu[t].author,stu[t].fn,stu[t].place,stu[t].day,stu[t].money);</p>&l
52、t;p><b> }</b></p><p><b> }</b></p><p> if(t==-1) printf("不存在該信息\n");</p><p><b> }</b></p><p> else return;</p&g
53、t;<p> }while(1);</p><p><b> }</b></p><p> void Display()/*輸出*/</p><p><b> {</b></p><p><b> FILE *fp;</b></p><
54、;p><b> int i;</b></p><p> fp=fopen("student","rb"); </p><p> printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");</p><p>
55、; printf(" 圖書列表\n");</p><p> printf("-----------------------------------------------------------\n");</p><p> printf("登錄號(hào) 書名 作者名 分類號(hào) 出版單
56、位 出版時(shí)間 價(jià)格\n");</p><p> printf("-----------------------------------------------------------\n");</p><p> for(i=0;fread(&stu[i],sizeof(struct Student),1,fp)==1;i++)</p&
57、gt;<p><b> {</b></p><p> printf("%6d %8s %8s %8s %8s %8s %8.2f\n",stu[i].num,stu[i].name,stu[i].author,stu[i].fn,stu[i].place,stu[i].day,stu[i].money);</p><p><
58、b> }</b></p><p> fclose(fp);</p><p><b> }</b></p><p> void Input()/*輸入*/</p><p><b> {</b></p><p><b> FILE *fp;
59、</b></p><p><b> int n;</b></p><p> fp=fopen("student","ab+"); </p><p> for(n=0;n<MAX;n++)</p><p><b> {</b></
60、p><p> printf("n=%d 輸入序號(hào)n(當(dāng)輸入n=-1時(shí),返回),n=",n++);</p><p> scanf("%d",&n);</p><p> if(n==-1) </p><p><b> {</b></p><p>
61、fclose(fp);</p><p><b> return;</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> print
62、f("請(qǐng)輸入登錄號(hào) 書名 作者名 分類號(hào) 出版單位 出版時(shí)間 價(jià)格\n");</p><p> scanf("%d%s%s%s%s%s%f",&stu[n].num,stu[n].name,stu[n].author,stu[n].fn,stu[n].place,stu[n].day,&stu[n].money);</p><p>
63、; fwrite(&stu[n],sizeof(struct Student),1,fp);</p><p><b> }</b></p><p><b> }</b></p><p> fclose(fp);</p><p><b> }</b></p
64、><p> void Modify()/*刪除*/</p><p><b> {</b></p><p><b> FILE *fp;</b></p><p> int i,flag,n,s,j; </p><p> fp=fopen("student&
65、quot;,"rb+"); </p><p> rewind(fp);</p><p> printf(" 圖書列表\n");</p><p> printf("--------------------------------------------------
66、---------\n");</p><p> printf("登錄號(hào) 書名 作者名 分類號(hào) 出版單位 出版時(shí)間 價(jià)格\n");</p><p> printf("-----------------------------------------------------------\n");</p>
67、<p> for(i=0;fread(&stu[i],sizeof(struct Student),1,fp)==1;i++)</p><p><b> {</b></p><p> printf("%6d %8s %8s %8s %8s %8s %8.2f\n",stu[i].num,stu[i].name,stu[i
68、].author,stu[i].fn,stu[i].place,stu[i].day,stu[i].money);</p><p> printf("\n");</p><p><b> } </b></p><p><b> n=i;</b></p><p> prin
69、tf("輸入待刪除圖書號(hào):\n");</p><p> scanf("%d",&s);</p><p> for(i=0,flag=1;flag&&i<n;i++)</p><p><b> {</b></p><p> if(s==stu[i
70、].num)</p><p><b> {</b></p><p> for(j=i;j<n-1;j++)</p><p><b> {</b></p><p> stu[j].num=stu[j+1].num;</p><p> strcpy(stu[j].
71、name,stu[j+1].name); </p><p> strcpy(stu[j].author,stu[j+1].author);</p><p> strcpy(stu[j].fn,stu[j+1].fn);</p><p> strcpy(stu[j].place,stu[j+1].place)
72、;</p><p> strcpy(stu[j].day,stu[j+1].day);</p><p> stu[j].money=stu[j+1].money;</p><p><b> }</b></p><p><b> flag=0;</b></p><p>
73、<b> }</b></p><p><b> }</b></p><p><b> if(!flag)</b></p><p><b> n=n-1;</b></p><p><b> else</b></p>
74、<p> printf("沒有此號(hào)\n");</p><p> fp=fopen("student","wb");</p><p> for(i=0;i<n;i++)</p><p> fwrite(&stu[i],sizeof(struct Student),1,fp
75、);</p><p> fclose(fp);</p><p> fp=fopen("student","r"); </p><p> printf(" 圖書列表\n");</p><p> printf("------
76、-----------------------------------------------------\n");</p><p> printf("登錄號(hào) 書名 作者名 分類號(hào) 出版單位 出版時(shí)間 價(jià)格\n");</p><p> printf("-----------------------------------
77、------------------------\n");</p><p> for(i=0;i<n;i++)</p><p><b> {</b></p><p> fread(&stu[i],sizeof(struct Student),1,fp);</p><p> printf(&
78、quot;%6d %8s %8s %8s %8s %8s %8.2f\n",stu[i].num,stu[i].name,stu[i].author,stu[i].fn,stu[i].place,stu[i].day,stu[i].money);</p><p> printf("\n");</p><p><b> }</b><
79、;/p><p> fclose(fp);</p><p><b> }</b></p><p> void Change()/*修改*/</p><p><b> { </b></p><p><b> FILE *fp;</b></p&g
80、t;<p> int i,num,n;</p><p> int flag=0; </p><p> fp=fopen("student","rb"); </p><p> printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※
81、※※\n");</p><p> printf(" 圖書列表\n");</p><p> printf("-----------------------------------------------------------\n");</p><p> printf(&
82、quot;登錄號(hào) 書名 作者名 分類號(hào) 出版單位 出版時(shí)間 價(jià)格\n");</p><p> printf("-----------------------------------------------------------\n");</p><p> for(i=0;fread(&stu[i],sizeof(stru
83、ct Student),1,fp)==1;i++)</p><p><b> {</b></p><p> printf("%6d %8s %8s %8s %8s %8s %8.2f\n",stu[i].num,stu[i].name,stu[i].author,stu[i].fn,stu[i].place,stu[i].day,stu[i].
84、money);</p><p><b> }</b></p><p> fclose(fp);</p><p> printf("請(qǐng)輸入要修改的圖書號(hào):");</p><p> scanf("%d",&num);</p><p> for(
85、i=0;i<=MAX;i++)</p><p> if(stu[i].num==num)</p><p><b> {</b></p><p> printf(" 圖書列表\n");</p><p> printf("---------
86、--------------------------------------------------\n");</p><p> printf("登錄號(hào) 書名 作者名 分類號(hào) 出版單位 出版時(shí)間 價(jià)格\n");</p><p> printf("--------------------------------------
87、---------------------\n");</p><p> printf("%6d %8s %8s %8s %8s %8s %8.2f\n",stu[i].num,stu[i].name,stu[i].author,stu[i].fn,stu[i].place,stu[i].day,stu[i].money);</p><p> printf(
88、"-----------------------------------------------------------\n\n");</p><p><b> n=i;</b></p><p><b> flag=1;</b></p><p><b> break;</b>
89、</p><p><b> }</b></p><p> if(flag==0)</p><p><b> {</b></p><p> printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");</p><p> p
90、rintf(" 輸入錯(cuò)誤!\n");</p><p> printf(" 請(qǐng)返回!\n");</p><p> printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");</p><p&
91、gt;<b> return;</b></p><p><b> }</b></p><p> printf("\n\n\n"); </p><p> fp=fopen("student","rb+");</p><p> fs
92、eek(fp,n*sizeof(struct Student),0);</p><p> printf("登錄號(hào) 書名 作者名 分類號(hào) 出版單位 出版時(shí)間 價(jià)格\n");</p><p> scanf("%d%s%s%s%s%s%f",&stu[n].num,stu[n].name,stu[n].author,s
93、tu[n].fn,stu[n].place,stu[n].day,&stu[n].money); </p><p> fwrite(&stu[i],sizeof(struct Student),1,fp);</p><p> fclose(fp);</p><p> fp=fopen("student","rb&q
94、uot;);</p><p> printf(" 圖書列表\n");</p><p> printf("-----------------------------------------------------------\n");</p><p> printf("登
95、錄號(hào) 書名 作者名 分類號(hào) 出版單位 出版時(shí)間 價(jià)格\n");</p><p> printf("-----------------------------------------------------------\n");</p><p> for(i=0;fread(&stu[i],sizeof(struct Stu
96、dent),1,fp)==1;i++)</p><p><b> {</b></p><p> printf("%6d %8s %8s %8s %8s %8s %8.2f\n",stu[i].num,stu[i].name,stu[i].author,stu[i].fn,stu[i].place,stu[i].day,stu[i].money)
97、;;</p><p><b> }</b></p><p> printf("-----------------------------------------------------------\n\n");</p><p> fclose(fp);</p><p><b> }&
98、lt;/b></p><p> 5.操作方法(流程)</p><p> 第一步:雙擊打包好的.exe程序,打開程序。</p><p> 第二步:根據(jù)窗口提示內(nèi)容作出選擇。</p><p> 第三步:根據(jù)彈出的二級(jí)菜單作出選擇。</p><p> 第四步:根據(jù)所選內(nèi)容進(jìn)行相應(yīng)的操作。</p>
99、<p> 第五步:操作完畢,根據(jù)提示返回主菜單會(huì)直接退出該系統(tǒng)。</p><p><b> 6.試驗(yàn)結(jié)果</b></p><p><b> A、圖書信息錄入:</b></p><p><b> 數(shù)據(jù)輸入:</b></p><p><b> 數(shù)據(jù)輸
100、出:</b></p><p><b> B、圖書信息瀏覽</b></p><p><b> 輸入數(shù)據(jù):</b></p><p><b> 數(shù)據(jù)輸出:</b></p><p><b> C、圖書信息查詢</b></p>&l
101、t;p><b> 輸入數(shù)據(jù):</b></p><p><b> 輸出數(shù)據(jù):</b></p><p><b> D、圖書信息刪除:</b></p><p><b> 輸入數(shù)據(jù):</b></p><p><b> 輸出數(shù)據(jù):</
102、b></p><p><b> E、圖書信息修改</b></p><p><b> 輸入數(shù)據(jù):</b></p><p><b> 輸出數(shù)據(jù):</b></p><p><b> F、系統(tǒng)退出</b></p><p>&l
103、t;b> 輸入數(shù)據(jù):</b></p><p><b> 數(shù)據(jù)輸出:</b></p><p><b> 7.設(shè)計(jì)體會(huì)。</b></p><p> 一學(xué)期的C語(yǔ)言課程學(xué)習(xí),已經(jīng)接近尾聲。在這學(xué)期的學(xué)習(xí)中,雖然沒有達(dá)到對(duì)C語(yǔ)言很了解,但是在今后的生活中,不斷積累,不斷學(xué)習(xí)這門課程。因?yàn)槎贾肋@門課程的重
104、要性以及參加工作后的必要性。學(xué)好C語(yǔ)言,對(duì)今后找工作各方面都有著很大的幫助,所以我們有機(jī)會(huì)學(xué)習(xí)這門課程,就必須學(xué)好。仔細(xì)想想學(xué)習(xí)C語(yǔ)言 的過(guò)程中,煩惱多多。C 語(yǔ)言程序設(shè)計(jì)到底是有什么用。這門課程是用來(lái)做什么的。這就是我最初的疑惑。后來(lái)慢慢的接觸多了,漸漸的有了點(diǎn)認(rèn)識(shí)。其實(shí)我十分不喜歡這門課程,真的。當(dāng)上機(jī)操作程序,經(jīng)過(guò)編譯,調(diào)試和運(yùn)行后,出現(xiàn)界面,當(dāng)時(shí)覺得很好奇,想真正的學(xué)好這門課程。通過(guò)半個(gè)學(xué)期的學(xué)習(xí),我了解了基本知識(shí)。知道編程的
105、基本格式,學(xué)會(huì)了一些基本語(yǔ)句,在程序中一些符號(hào)所代表的含義以及在程序中所要表示的含義。編寫程序時(shí),要注意的地方很多,一個(gè)小小的符號(hào)錯(cuò)誤就會(huì)導(dǎo)致程序編譯失敗,很糾結(jié)的事情。所以編程時(shí)要十分仔細(xì)小心。學(xué)了各種語(yǔ)句,編寫了幾個(gè)程序,這只不過(guò)是C語(yǔ)言中基本再基本的東西了,但還是挺模糊的,對(duì)學(xué)習(xí)這門課程講究的是過(guò)程。學(xué)習(xí)編譯基本程序后,才可以編譯更加難的程序。慢慢來(lái)吧,有些事情做了不一定成功,但是不去做肯定不</p><p
106、><b> 七、附錄</b></p><p><b> 1.流程圖</b></p><p><b> 主頁(yè)面:</b></p><p><b> 信息錄入:</b></p><p><b> 信息瀏覽:</b><
107、/p><p><b> 信息查詢:</b></p><p><b> 信息刪除:</b></p><p><b> 信息修改:</b></p><p><b> 系統(tǒng)退出:</b></p><p><b> 2.主要
108、過(guò)程列表</b></p><p><b> A、程序開頭定義:</b></p><p> #include<stdio.h>:#include是編譯預(yù)處理指令,就是在編譯前將stdio.h這個(gè)文件里的函數(shù)都添加到你寫的cpp文件中。</p><p> #include<string.h>:在編譯前C語(yǔ)言
109、里面關(guān)于字符數(shù)組的函數(shù)定義的頭文件,就是在編譯前將stdio.h這個(gè)文件里的函數(shù)都添加到你寫的cpp文件中。</p><p> #include<stdlib.h>:在編譯前將stdlib.h這個(gè)文件里的函數(shù)都添加到你寫的cpp文件中。</p><p> #include<conio.h>:在編譯前將conio.h這個(gè)文件里的函數(shù)都添加到你寫的cpp文件中。&l
110、t;/p><p> #define MAX 100:#define 就是在編譯器編譯之前對(duì)代碼進(jìn)行字符串替換,即是把MAX換成100.</p><p> B、struct Student:</p><p> 結(jié)構(gòu)體,定義的結(jié)構(gòu)體是整個(gè)程序的共用體,即是該結(jié)構(gòu)體可在每個(gè)模塊中不從新定義就使用。</p><p> C、main()主函數(shù)模塊主
111、要變量、函數(shù):</p><p> void Input():自定義輸入函數(shù)。</p><p> void Display():自定義輸出函數(shù)。</p><p> void Find():自定義查找函數(shù)。</p><p> void Modify():自定義刪除函數(shù)。</p><p> void Change(
112、):自定義修改函數(shù)。</p><p> for():循環(huán)函數(shù)。</p><p> switch():選擇函數(shù),判斷用戶輸入的數(shù)字進(jìn)行功能選擇。</p><p> exit():退出循環(huán)函數(shù)。</p><p> D、void Input()輸入模塊主要變量、函數(shù):</p><p> FILE *fp:聲明fp是
113、指針,用來(lái)指向FILE類型的對(duì)象。</p><p> fopen(): fopen函數(shù)用來(lái)打開一個(gè)文件。</p><p> printf():輸出函數(shù),以程序員規(guī)定數(shù)據(jù)類型把數(shù)據(jù)輸出到窗口上。</p><p> scanf():輸入函數(shù),以程序員規(guī)定的的數(shù)據(jù)類型輸入數(shù)據(jù)。</p><p> if()…else:條件判斷函數(shù)。
114、</p><p> fclose():關(guān)閉文件的函數(shù),功能為關(guān)閉打開的文件,以防止數(shù)據(jù)丟失。</p><p> fwrite():向文件寫入一個(gè)數(shù)據(jù)塊。</p><p> sizeof():以字節(jié)形式給出了其操作數(shù)的存儲(chǔ)大小。</p><p> for():循環(huán)函數(shù)。</p><p> E、void Disp
115、lay()輸出函數(shù)主要變量、函數(shù):</p><p> FILE *fp:聲明fp是指針,用來(lái)指向FILE類型的對(duì)象。</p><p> fread():在文件中讀出一個(gè)數(shù)據(jù)塊賦值給某一個(gè)變量</p><p> fopen(): fopen函數(shù)用來(lái)打開一個(gè)文件。</p><p> fclose():關(guān)閉文件的函數(shù),功能為關(guān)閉打
116、開的文件,以防止數(shù)據(jù)丟失。</p><p> printf():輸出函數(shù),以程序員規(guī)定數(shù)據(jù)類型把數(shù)據(jù)輸出到窗口上。</p><p> scanf():輸入函數(shù),以程序員規(guī)定的的數(shù)據(jù)類型輸入數(shù)據(jù)。</p><p> if()…else:條件判斷函數(shù)。</p><p> for():循環(huán)函數(shù)。</p><p>
117、F、void Find()查找函數(shù)主要的變量和函數(shù):</p><p> FILE *fp:聲明fp是指針,用來(lái)指向FILE類型的對(duì)象。</p><p> char ans[100]:一個(gè)定義為字符型的有100個(gè)元素的數(shù)組。</p><p> strcmp(,):比較函數(shù)。比較逗號(hào)兩邊的值是否一樣,如果一樣返回值為0,否則為1 。</p><
118、p> do….while:循環(huán)函數(shù),當(dāng)函數(shù)返回值為1時(shí)退出循環(huán),否則繼續(xù)循環(huán)。</p><p> fopen(): fopen函數(shù)用來(lái)打開一個(gè)文件。</p><p> fclose():關(guān)閉文件的函數(shù),功能為關(guān)閉打開的文件,以防止數(shù)據(jù)丟失。</p><p> if()…else:條件判斷函數(shù)。</p><p> fo
119、r():循環(huán)函數(shù)。</p><p> printf():輸出函數(shù),以程序員規(guī)定數(shù)據(jù)類型把數(shù)據(jù)輸出到窗口上。</p><p> scanf():輸入函數(shù),以程序員規(guī)定的的數(shù)據(jù)類型輸入數(shù)據(jù)。</p><p> G、void Modify()刪除函數(shù)主要變量和函數(shù):</p><p> fopen(): fopen函數(shù)用來(lái)打開一個(gè)文
120、件。</p><p> fclose():關(guān)閉文件的函數(shù),功能為關(guān)閉打開的文件,以防止數(shù)據(jù)丟失。</p><p> rewind():將文件指針重新指向一個(gè)流的開頭。</p><p> if()…else:條件判斷函數(shù)。</p><p> for():循環(huán)函數(shù)。</p><p> printf():輸出函數(shù),
121、以程序員規(guī)定數(shù)據(jù)類型把數(shù)據(jù)輸出到窗口上。</p><p> scanf():輸入函數(shù),以程序員規(guī)定的的數(shù)據(jù)類型輸入數(shù)據(jù)。</p><p> sizeof():以字節(jié)形式給出了其操作數(shù)的存儲(chǔ)大小。</p><p> H、void Change()修改函數(shù)主要變量和函數(shù):</p><p> fopen(): fopen函數(shù)用來(lái)打
122、開一個(gè)文件。</p><p> fclose():關(guān)閉文件的函數(shù),功能為關(guān)閉打開的文件,以防止數(shù)據(jù)丟失。</p><p> fseek(): 重定位流(數(shù)據(jù)流/文件)上的文件內(nèi)部位置指針。</p><p> fwrite():向文件寫入一個(gè)數(shù)據(jù)塊。</p><p> if()…else:條件判斷函數(shù)。</p><p
123、> for():循環(huán)函數(shù)。</p><p> printf():輸出函數(shù),以程序員規(guī)定數(shù)據(jù)類型把數(shù)據(jù)輸出到窗口上。</p><p> scanf():輸入函數(shù),以程序員規(guī)定的的數(shù)據(jù)類型輸入數(shù)據(jù)。</p><p> sizeof():以字節(jié)形式給出了其操作數(shù)的存儲(chǔ)大小。</p><p><b> 參考文獻(xiàn):</b
124、></p><p> 譚浩強(qiáng)2005版C語(yǔ)言程序設(shè)計(jì)</p><p> 譚浩強(qiáng)、張基溫合著2010版C語(yǔ)言習(xí)題集</p><p> 高洛峰2010版《細(xì)說(shuō)PHP》</p><p><b> 附源程序:</b></p><p> #include<stdio.h><
125、/p><p> #include<string.h></p><p> #include<stdlib.h></p><p> #include<conio.h></p><p> #define MAX 100</p><p> struct Student</p>
126、;<p><b> {</b></p><p> int num;/*登錄號(hào)*/</p><p> char name[100];/*書名*/</p><p> char author[100];/*作者名*/</p><p> char fn[100];/*分類號(hào)*/</p>&l
127、t;p> char place[100];/*出版單位*/</p><p> char day[100];/*出版時(shí)間*/</p><p> float money;/*價(jià)格*/</p><p> }stu[MAX];</p><p> main()/*主函數(shù)*/</p><p><b>
128、{</b></p><p> void Input();/*輸入*/</p><p> void Display();/*輸出*/</p><p> void Find();/*查找*/</p><p> void Modify();/*刪除*/</p><p> void Change();/*
129、修改*/</p><p><b> int n;</b></p><p><b> for(;;)</b></p><p><b> {</b></p><p> printf("\n");</p><p> printf(
130、"※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");</p><p> printf("※ ※\n");</p><p> printf("※ 歡迎來(lái)到圖書信息管理系統(tǒng)
131、 ※\n");</p><p> printf("※ ※\n");</p><p> printf("※
132、 ※\n");</p><p> printf("※ 主菜單 ※\n");</p><p> printf("※ ※\n
133、");</p><p> printf("※ ▲1.圖書信息錄入 ▲ ※\n"); </p><p> printf("※ ※\n");
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 圖書信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 圖書信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)報(bào)告--圖書信息管理系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)--圖書信息管理系統(tǒng)
- 圖書信息管理系統(tǒng)課程設(shè)計(jì)
- 圖書信息管理系統(tǒng) 課程設(shè)計(jì)
- 課程設(shè)計(jì)---圖書信息管理系統(tǒng)
- 課程設(shè)計(jì)---圖書信息管理系統(tǒng)
- java圖書信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)--- 圖書信息管理系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)---圖書信息管理系統(tǒng)設(shè)計(jì)
- 程序課程設(shè)計(jì)報(bào)告 圖書信息管理系統(tǒng)
- 圖書信息管理系統(tǒng)——c語(yǔ)言課程設(shè)計(jì)報(bào)告
- c++課程設(shè)計(jì)報(bào)告---圖書信息管理系統(tǒng)
- c語(yǔ)言圖書信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- c語(yǔ)言課程設(shè)計(jì)報(bào)告—圖書信息管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)報(bào)告-- 圖書信息管理系統(tǒng)設(shè)計(jì)
- c++課程設(shè)計(jì)報(bào)告---圖書信息管理系統(tǒng)設(shè)計(jì)
- sql課程設(shè)計(jì)(圖書信息管理系統(tǒng))
- c語(yǔ)言課程設(shè)計(jì)報(bào)告—圖書信息管理系統(tǒng)
評(píng)論
0/150
提交評(píng)論