版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上一、課程設(shè)計(jì)的內(nèi)容將所選的題目的內(nèi)容copy過(guò)來(lái),包括功能要求等等。不記得可以看附錄。字體是楷體,注意排版,不要讓下一頁(yè)(老師簽名那頁(yè))跨頁(yè)!C題目二:圖書信息管理系統(tǒng)設(shè)計(jì)圖書信息包括:登錄號(hào)、書名、作者名、分類號(hào)、出版單位、出版時(shí)間、價(jià)格等。試設(shè)計(jì)一圖書信息管理系統(tǒng),使之能提供以下功能:系統(tǒng)以菜單方式工作v圖書信息錄入功能(圖書信息用文件保存)輸入v圖書信息瀏覽功能輸出v查詢和排序功能:(至少一種查詢方式)算法vl 按書名查詢l 按作者名查詢圖書信息的刪除與修改(可選項(xiàng))v 二、課程設(shè)計(jì)的要求與數(shù)據(jù)1、進(jìn)一步掌握和利用C語(yǔ)言進(jìn)行程設(shè)計(jì)的能力;2、進(jìn)一步理解和運(yùn)用結(jié)構(gòu)
2、化程序設(shè)計(jì)的思想和方法;3、初步掌握開發(fā)一個(gè)小型實(shí)用系統(tǒng)的基本方法;4、學(xué)會(huì)調(diào)試一個(gè)較長(zhǎng)程序的基本方法;5、學(xué)會(huì)利用流程圖或N-S圖表示算法;6、掌握書寫程序設(shè)計(jì)開發(fā)文檔的能力。三、課程設(shè)計(jì)應(yīng)完成的工作1、編寫完成相應(yīng)題目的程序;2、編寫課程設(shè)計(jì)報(bào)告,課程設(shè)計(jì)報(bào)告的內(nèi)容應(yīng)包括以下6個(gè)部分:1) 需求分析:包括設(shè)計(jì)題目、設(shè)計(jì)要求以及系統(tǒng)功能需求分析;2) 總體設(shè)計(jì):包括系統(tǒng)總體設(shè)計(jì)框架和系統(tǒng)功能模塊圖;3) 詳細(xì)設(shè)計(jì):包括主要功能模塊的算法設(shè)計(jì)思路以及對(duì)應(yīng)的工作流程圖;4) 調(diào)試分析過(guò)程描述:包括測(cè)試數(shù)據(jù)、測(cè)試輸出結(jié)果,以及對(duì)程序調(diào)試過(guò)程中存在問(wèn)題的思考(列出主要問(wèn)題的出錯(cuò)現(xiàn)象、出錯(cuò)原因、解決方
3、法及效果等,適當(dāng)?shù)陌Y(jié)果截圖);5) 總結(jié):課程設(shè)計(jì)完成了哪些功能,有沒(méi)有什么擴(kuò)展功能?還有哪些地方需要改進(jìn)?課程設(shè)計(jì)過(guò)程中的學(xué)習(xí)體會(huì)與收獲、對(duì)本次課程設(shè)計(jì)的認(rèn)識(shí)以及自己的建議等內(nèi)容; 6) 附錄:主要源程序代碼,含必要的注釋。3、答辯:在實(shí)驗(yàn)室建立程序運(yùn)行的環(huán)境,并在指導(dǎo)教師的監(jiān)督下,獨(dú)立解 決問(wèn)題、運(yùn)行程序和回答教師提出的問(wèn)題。四、課程設(shè)計(jì)進(jìn)程安排序號(hào)設(shè)計(jì)各階段內(nèi)容地點(diǎn)起止日期1下達(dá)任務(wù)書,說(shuō)明設(shè)計(jì)要求;收集資料實(shí)驗(yàn)3#5176.182總體方案設(shè)計(jì)、詳細(xì)設(shè)計(jì)實(shí)驗(yàn)3#5176.193編寫程序,調(diào)試分析實(shí)驗(yàn)3#5176.204撰寫報(bào)告并上交,答辯實(shí)驗(yàn)3#5176.21五、應(yīng)收集的資料及主要參
4、考文獻(xiàn)注意參考文獻(xiàn)的格式要求,依照下面的兩個(gè)的格式填寫,可以是網(wǎng)頁(yè),書,雜志, 合計(jì)最少3本(已有的兩個(gè)譚老師的算2本).1 譚浩強(qiáng).C程序設(shè)計(jì)(第三版)M,北京:清華大學(xué)出版社,2005.92 譚浩強(qiáng). C程序設(shè)計(jì)題解與上機(jī)指導(dǎo)(第三版)M,北京:清華大學(xué)出版社,2005.7發(fā)出任務(wù)書日期: 2007年 6 月 18 日 指導(dǎo)教師簽名:計(jì)劃完成日期: 2007年 6 月 22 日 基層教學(xué)單位責(zé)任人簽章:主管院長(zhǎng)簽章:前面的排版注意不要使這頁(yè)跨頁(yè)!切記切記!目 錄1 設(shè)計(jì)目的與要求頁(yè)碼2 總體設(shè)計(jì)頁(yè)碼3 詳細(xì)設(shè)計(jì)頁(yè)碼3.1功能模塊設(shè)計(jì)頁(yè)碼3.1.1 XX功能模塊(可選) 頁(yè)碼3.1.1 YY
5、功能模塊(可選) 頁(yè)碼3.1.1 ZZ功能模塊(可選)頁(yè)碼3.2數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)頁(yè)碼4調(diào)試分析 頁(yè)碼5 總結(jié)頁(yè)碼6 附錄頁(yè)碼6 答辯記錄(正文處請(qǐng)留出適當(dāng)空白) 頁(yè)碼7 指導(dǎo)教師意見(正文處請(qǐng)留出十行空白) 頁(yè)碼1 目的與要求正文內(nèi)容采用5號(hào)宋體寫.題目:圖書信息管理系統(tǒng)設(shè)計(jì)圖書信息包括:登錄號(hào)、書名、作者名、分類號(hào)、出版單位、出版時(shí)間、價(jià)格等。試設(shè)計(jì)一圖書信息管理系統(tǒng),使之能提供以下功能:系統(tǒng)以菜單方式工作v圖書信息錄入功能(圖書信息用文件保存)輸入v圖書信息瀏覽功能輸出v查詢和排序功能:(至少一種查詢方式)算法vl 按書名查詢l 按作者名查詢圖書信息的刪除與修改(可選項(xiàng))v需求說(shuō)明:圖書信息包
6、括:登錄號(hào)、書名、作者名、分類號(hào)、出版單位、出版時(shí)間、價(jià)格等并且要求職工號(hào)不重復(fù);錄入的圖書信息要求用文件形式保存,并可以對(duì)其進(jìn)行瀏覽、查詢、修改、刪除等基本操作;對(duì)圖書信息查詢應(yīng)能夠分別按書名及作者名兩種方式進(jìn)行,要求能返回所有符合條件的職工的信息;對(duì)職工信息的修改應(yīng)逐個(gè)地進(jìn)行,一個(gè)職工信息的更改不應(yīng)影響其他的職工記錄;系統(tǒng)應(yīng)以菜單方式工作,應(yīng)為用戶提供清晰的使用提示,依據(jù)用戶的選擇來(lái)進(jìn)行各種處理。 2 總體設(shè)計(jì)文件保存圖書信息管理系統(tǒng)按作者名查詢刪除按書名查詢按登陸號(hào)排序 菜單選擇輸入修改輸出查詢菜單選擇模塊完成用戶命令的接收,此模塊也是圖書信息管理系統(tǒng)的入口,用戶所要進(jìn)行的各種操作均需在
7、此模塊中進(jìn)行選擇并進(jìn)而調(diào)用其他模塊實(shí)現(xiàn)相應(yīng)的功能;輸入模塊完成圖書信息的輸入功能,輸入信息包括登陸號(hào)、書名、作者名、分類號(hào)、出版社、出版日期、價(jià)錢等;輸出模塊完成已錄入圖書信息的顯示;查詢模塊完圖書信息的查詢,查詢時(shí)對(duì)應(yīng)有按書名查詢和按作者名查詢兩種方式;修改模塊完成圖書信息的修改功能;刪除模塊完成圖書信息的刪除功能;按登陸號(hào)排序模塊完成對(duì)信息的排序;文件保存模塊完成文件的保存。3 詳細(xì)設(shè)計(jì)(內(nèi)容可以適當(dāng)調(diào)整,清晰的有條理的把你的設(shè)計(jì)思路表達(dá)出來(lái))3.1功能模塊設(shè)計(jì)3.1.1 XX功能模塊(可選)3.1.2 YY功能模塊(可選)3.1.3 ZZ功能模塊(可選)3.2數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)(可選) 菜單選
8、擇模塊:(給出信息提示;繪制菜單(包含輸入、顯示、查詢、修改、刪除、退出、排序);提示菜單選擇并讀入到變量;根據(jù)讀入變量的值調(diào)用不同的模塊函數(shù);) 信息輸入模塊:(打開職工信息文件;發(fā)出輸入提示信息; 輸入職工信息;提示是否繼續(xù)輸入;讀入到變量;根據(jù)讀入變量的值進(jìn)入菜單或輸入函數(shù)模塊;) 信息輸出模塊:(輸出所有圖書的所有信息。) 信息查詢模塊:(調(diào)用switch函數(shù); 給出信息提示;提示菜單選擇并讀入到變量;根據(jù)讀入變量的值進(jìn)入不同的case;Case 1 給出信息提示;提示菜單
9、選擇并讀入到變量;Strcmp函數(shù)將保存的信息與變量比較,如有相同,就輸出該圖書的所有信息;否則,提示出錯(cuò)。Case 2 給出信息提示;提示菜單選擇并讀入到變量;Strcmp函數(shù)將保存的信息與變量比較,如有相同,就輸出該圖書的所有信息;否則,提示出錯(cuò)。)5 信息修改模塊:(給出信息提示;提示菜單選擇并讀入到變量;Strcmp函數(shù)將保存的信息與變量比較,如有相同,就輸出該圖書的所有信息,并提示輸入新的圖書信息;否則,提示出錯(cuò)。)6信息刪除模塊:(給出信息提示;提示菜單選擇并讀入到變量;Strcmp函數(shù)將保存的信息與變量比較,如有相同,就輸出該圖書的所有信息,并刪除該圖書的圖書信息;否則,提示出錯(cuò)
10、。)7排序模塊(看能不能打開程序;如能,則用冒泡法排序;輸出排序后的所有信息)8 文件保存模塊(看文件能不能讀;否則提示出錯(cuò)。看文件的長(zhǎng)度符不符合要求;否則提示出錯(cuò)。保存文件)4 調(diào)試分析一實(shí)現(xiàn)程序:首先進(jìn)入如下界面: 1:input 2:output 3:save 4:search 5:xiugai 6:del7:sort 0:exit;二輸入“1”,后按“num登陸號(hào)”, book_name書名,writer作者名,sort。name分類號(hào),出版社pubconpany,出版時(shí)間pubtime,價(jià)錢price順序輸入兩組數(shù)據(jù):“1,we,er,1,as,1234,34”“2,ew,re,2,
11、sa,4321,43”三輸入“3”保存。四輸入“2”輸出數(shù)據(jù):“1,we,er,1,as,1234,34”“2,ew,re,2,sa,4321,43”五輸入“4”查找,“請(qǐng)選擇按書名或作者名查詢: 1:書名。 2作者名 “輸入“1“或”2“分別查詢。輸入“1“和“we“,輸出“1,we,er,1,as,1234,34”;輸入2和“re“,輸出“2,ew,re,2,sa,4321,43” 符合要求六 輸入”5”或“6“進(jìn)行修改或刪除。輸入修改的書名“we”顯示“1,we,er,1,as,1234,34”及“please input xiugai's the informations”,后
12、輸入新信息,再輸入“3”保存。七輸入7按登陸號(hào)排序。運(yùn)行正常,輸入0退出。調(diào)試過(guò)程中,問(wèn)題很多比如說(shuō)編寫排序和文件保存函數(shù)時(shí),對(duì)fopen函數(shù)認(rèn)識(shí)不夠,一開始是用if(fp=fopen("f:c","rb")=NULL)這個(gè)語(yǔ)句,調(diào)試的時(shí)候一直都最少都是一個(gè)錯(cuò)誤:后來(lái)怎么弄都糾正不了。后來(lái)慢慢的查書,逐行檢查。才終于改正為 if(fp=fopen("file.c","wb")=NULL)。程序終于可以運(yùn)行。通過(guò)這我懂得:寫程序時(shí)一定要嚴(yán)謹(jǐn),盡可能寫下的每一行不出錯(cuò)。否則調(diào)試時(shí)會(huì)很麻煩。5 總 結(jié) 本次課程設(shè)計(jì)是我這
13、學(xué)期編寫的第一個(gè)大程序,從花費(fèi)的過(guò)去三天總計(jì)十七個(gè)小時(shí)中,我得到如下收獲:1 用好C語(yǔ)言某種程度上關(guān)鍵就是用好所需的各種函數(shù)的調(diào)用,c語(yǔ)言的確是一種結(jié)構(gòu)化的語(yǔ)言。2 學(xué)會(huì)和加深了對(duì)于結(jié)構(gòu)體和共用體的理解,以及在程序中怎樣實(shí)現(xiàn)文件函數(shù)的輸入輸出和文件的定位。3 只有上機(jī)實(shí)踐才能檢驗(yàn)自己寫的程序,看是看不出來(lái)的。4 深深懂得調(diào)試、書寫規(guī)范和檢錯(cuò)的重要性。5 連續(xù)三天每天六小時(shí)端坐在電腦前動(dòng)都不能動(dòng),絞盡腦汁艱苦奮斗的經(jīng)歷告訴我:程序員這種工作,真的不是人干的.7.附錄#include <stdio.h>#include <string.h>#include <stdl
14、ib.h>#define N 10struct library int num; char book_name30; char writer30; char sort_num3; char pub_company30; char pub_time30; char prise30;typedef struct library LIB;LIB libN;FILE *fp;int all=0;int menu(void);void input(void);void output(void);void save(void);void del(void);void search(void);voi
15、d xiugai(void);void sort(void);main() for(;) switch(menu() case 1:input();break; case 2:output();break; case 3:save();break; case 4:search();break; case 5:xiugai();break; case 6:del();break;case 7:sort();break; case 0:exit(1);break; int menu(void) /*顯示主菜單*/ char m3; int n; printf("tt1:inputn&qu
16、ot;); printf("tt2:outputn"); printf("tt3:saven"); printf("tt4:searchn"); printf("tt5:xiugain"); printf("tt6:deln"); printf("tt7:sortn"); printf("tt0:exitn"); printf("ttplease choose a operation(0-6):n"); scanf("%s&q
17、uot;,m); n=atoi(m); return(n);void input(void) /*顯示輸入函數(shù)*/ int i; char m3; for(i=all;i<N;i+) all+; printf("please input informations:n"); printf("ttnum:n"); scanf("%d",&libi.num); printf("ttbook_name:n"); scanf("%s",libi.book_name); printf(&quo
18、t;ttwriter:n"); scanf("%s",libi.writer); printf("ttsort_num:n"); scanf("%s",libi.sort_num); printf("ttpub_company:n"); scanf("%s",libi.pub_company); printf("ttpub_time:n"); scanf("%s",libi.pub_time); printf("ttprise:n&qu
19、ot;); scanf("%s",libi.prise);a: printf("ttyes/no continue input?n"); printf("tt1:yesn"); printf("tt2:non"); scanf("%s",m); if(atoi(m)=1) continue; else if(atoi(m)=2) return; else printf("ttinput error!n"); goto a; void output(void) /*顯示輸出函數(shù)
20、*/ int i; for(i=0;i<all;i+) printf("tt%dn",libi.num); printf("%stt%stt%sn",libi.book_name,libi.writer,libi.sort_num); printf("%stt%stt%sn",libi.pub_company,libi.pub_time,libi.prise); void sort(void)/*從登陸號(hào)從大到小排序的函數(shù)*/int b,i;struct library flash;if(fp=fopen("file.
21、c","wb")=NULL) printf("cannot open filen"); return; for(b=0;b<N;b+)for(i=b+1;i<N;i+)if(strcmp(libb.sort_num,libi.sort_num)<0)flash=libb;libb=libi;libi=flash;printf("the down object is:n");printf(" num book'name writer sort_num pub_company pub_time
22、 prisen");for(b=0;b<N;b+)if(libb.sort_num0!='0')printf("%d %s %s %s %s %s %sn",libb.num,libb.book_name,libb.writer,libb.sort_num,libb.pub_company,libb.pub_time,libb.prise);else break;void save(void) /*文件保存*/ int i;if(fp=fopen("file.c","wb")=NULL) printf(
23、"can not open the file"); exit(1); for(i=0;i<all;i+) if(fwrite(&libi,sizeof(LIB),1,fp)!=1) printf("can not write!"); exit(1); fclose(fp);void search(void) /*書名和作者名查找*/ int i,flag; char m3; char name30; printf("tt請(qǐng)選擇按書名或作者名查詢:n"); printf("tt1:書名n"); prin
24、tf("tt2:作者名n"); scanf("%s",m); i=atoi(m); switch(i) case 1: printf("ttplease input the book_name:n"); scanf("%s",name); flag=0; for(i=0;i<N;i+) if(strcmp(name,libi.book_name)=0) printf("tt%dn",libi.num); printf("%stt%stt%sn",libi.book_na
25、me,libi.writer,libi.sort_num); printf("%stt%stt%sn",libi.pub_company,libi.pub_time,libi.prise); flag=1;break; if(flag=0) printf("ttnot find the book!n"); break; case 2: printf("ttplease input the writer:n"); scanf("%s",name); flag=0; for(i=0;i<N;i+) if(strc
26、mp(name,libi.writer)=0) printf("tt%dn",libi.num); printf("%stt%stt%sn",libi.book_name,libi.writer,libi.sort_num); printf("%stt%stt%sn",libi.pub_company,libi.pub_time,libi.prise); flag=1;break; if(flag=0) printf("ttnot find the wtiter!n"); break; void xiugai(vo
27、id) /*顯示修改函數(shù)*/ int i,flag; char name30,n3; printf("ttplease input the book_name of xiugai :n"); scanf("%s",name); flag=0; for(i=0;i<N;i+) if(strcmp(name,libi.book_name)=0) printf("tt%dn",libi.num); printf("%stt%stt%sn",libi.book_name,libi.writer,libi.sort_n
28、um); printf("%stt%stt%sn",libi.pub_company,libi.pub_time,libi.prise); printf("ttplease input xiugai's the informations:n"); printf("ttnum:n"); scanf("%d",&libi.num); printf("ttbook_name:n"); scanf("%s",libi.book_name); printf("ttwriter:n"); scanf("%s",libi.writer); printf("ttsort_num:n"); scanf("%s",libi.sort_num); printf("ttpub_company:n"); scanf("%s",libi.pub_company); printf("ttpub_time:n"); scanf("%s"
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度生鮮配送與冷鏈倉(cāng)儲(chǔ)管理承包合同3篇
- 2025年度體育場(chǎng)館場(chǎng)地租賃及賽事運(yùn)營(yíng)管理服務(wù)協(xié)議2篇
- 2024皮鞋品牌代理權(quán)購(gòu)銷合同范本3篇
- 二零二五年度施工安全風(fēng)險(xiǎn)評(píng)估與管理合同3篇
- 2025年度高科技公司股東退股協(xié)議書3篇
- 2025年度房地產(chǎn)項(xiàng)目成本控制與合同管理協(xié)議3篇
- 二零二五年貓咪寵物保險(xiǎn)代理合同2篇
- 2025年跨境電商項(xiàng)目監(jiān)控與管理服務(wù)合同2篇
- 二零二五年度環(huán)保產(chǎn)業(yè)投資合作合同6篇
- 二零二四年醫(yī)療器械研發(fā)合同
- DB3303T 059-2023 政務(wù)信息化項(xiàng)目軟件開發(fā)費(fèi)用測(cè)算規(guī)范
- 康復(fù)科宣傳展板
- 二零二五年度IT公司內(nèi)部技術(shù)文檔保密與使用規(guī)范協(xié)議3篇
- 加強(qiáng)教師隊(duì)伍建設(shè)教師領(lǐng)域?qū)W習(xí)二十屆三中全會(huì)精神專題課
- 2024 年廣東公務(wù)員考試行測(cè)試題【A類+B類+C類】真題及答案
- 2024-2025學(xué)年人教版數(shù)學(xué)七年級(jí)上冊(cè)期末復(fù)習(xí)卷(含答案)
- 湖北省學(xué)前教育技能高考《幼兒心理》歷年考試真題題庫(kù)(含答案)
- 山東師范大學(xué)《文學(xué)評(píng)論寫作》2021-2022學(xué)年第一學(xué)期期末試卷
- 2024-2025學(xué)年人教版初一上學(xué)期期末英語(yǔ)試題與參考答案
- 四年級(jí)數(shù)學(xué)上冊(cè)人教版24秋《小學(xué)學(xué)霸單元期末標(biāo)準(zhǔn)卷》考前專項(xiàng)沖刺訓(xùn)練
- 公司出納年度工作總結(jié)
評(píng)論
0/150
提交評(píng)論