C語言課程設計電子詞典_第1頁
C語言課程設計電子詞典_第2頁
C語言課程設計電子詞典_第3頁
C語言課程設計電子詞典_第4頁
C語言課程設計電子詞典_第5頁
已閱讀5頁,還剩12頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、課 程 設 計 報 告課程名稱 ?C語言程序設計? 課題名稱 電子英漢詞典設計與實現 專 業 化學工程與工藝 班 級 化工0501班 學 號 03號 姓 名 唐 波 指導教師 楊子華 陳世清 李杰君 2007年 1 月 7 日湖南工程學院課 程 設 計 任 務 書課程名稱 ?C語言程序設計? 課 題 電子英漢詞典設計與實現 專業班級 化工0501 學生姓名 唐 波 學 號 03號 指導老師 楊子華 陳世清 李杰君 審 批 任務書下達日期 2006 年 12月 29 日任務完成日期 2007年 1 月 7 日一、設計內容與設計要求1設計內容:英漢詞典作為一個常用的學習工具,是我們經常要使用的。該

2、系統能完成一個簡單的電子英漢詞典的功能,如:單詞的查找、增詞、刪除、修改和維護等工作。2設計要求:1)在計算機中建立有限規模的電子英漢詞典文件,本詞典采用一個包含N個數據的結構體數組,每個數據的結構應當包括:英文單詞、詞性、拼讀音標、中文漢語拼音。2對單詞和釋義字符串長度的限定分別為不少于20個詞條。3本系統顯示這樣的菜單:電子英漢詞典(1)輸入新詞匯(2)刪除詞匯(3)查找詞匯 (4)修改詞匯信息(5)退出系統4采用菜單工作方式。在一個操作執行之后,程序詢問是否繼續執行該操作。如輸入Y或y,那么重復同一操作,不退回到菜單;如輸入其它信息,那么回到菜單等待另一次選擇。僅中選擇退出系統時,程序應

3、詢問是否將修改后的詞典存盤,并根據用戶選擇存盤退出或不存盤退出。5) 要求菜單美觀大方簡潔實用。二、進度安排12.29: 課題講解,查閱資料12.30: 總體設計,詳細設計12.31: 編程,上機調試、修改程序-1.4:上機調試、完善程序1.5: 辯論1.6-1.7:撰寫課程設計報告附:課程設計報告書寫標準、書寫格式及裝訂順序1、需求分析1程序的功能。2輸入輸出的要求。2、總體設計1程序由哪些模塊組成以及模塊之間的層次結構、各模塊的調用關系;每個模塊的功能。2課題涉及的數據;即要存儲什么數據,這些數據是什么樣的類型,它們之間有什么關系等。3、詳細設計畫出各模塊的程序流程圖。4、調試分析以及設計

4、體會1測試數據:準備典型的測試數據和測試方案,包括正確的輸入及輸出結果和含有錯誤的輸入及輸出結果。2程序調試中遇到的問題以及解決問題的方法。3課程設計過程經驗教訓、心得體會。5、使用說明用戶使用手冊:說明如何使用你編寫的程序,詳細列出每一步的操作步驟。6、參考書目(格式如下)1 張明敏.圖形圖形圖象文件格式解碼使用程序.中國圖象圖形學報J,1998,(5)2 譚浩強. C語言程序設計(第二版).清華大學出版社M, 1999 12(1): 298-3277、附錄源程序清單8、書寫格式及裝訂順序(1課程設計報告要求用A4紙打印成冊:(2) 小標題為:黑體小4號(加粗):正文為:宋體5號。行間距為固

5、定值22。(3) 封面按學校統一規定。 裝訂順序:封面、任務書、目錄、正文、評分、附件A4大小的圖紙及程序清單。 實驗:電子英漢詞典一、需求分析1程序的功能 英漢詞典作為一個常用的學習工具,是我們經常要使用的。該系統能完成一個簡單的電子英漢詞典的功能,如:單詞的查找、增詞、刪除、修改和維護等工作。在計算機中建立有限規模的電子英漢詞典文件,利用程序實現電子英漢詞典的查找、增詞、刪除、修改和維護工作。詞典的內容為:每行對應一個詞條,每個詞條由兩個字符串組成,字符串用假設干空格符分開;前一個是單詞字符串英文,后一個是釋義字符串中文,使用分號作為多個釋義的分隔符無空格。對單詞和釋義字符串長度的限定分別

6、為不少于10個與15個字符,詞條數限定為不多于1000條。2輸入輸出的要求。采用菜單工作方式。在一個操作執行之后,程序詢問是否繼續執行該操作。如輸入Y或y,那么重復同一操作,不退回到菜單;如輸入其它信息,那么回到菜單等待另一次選擇。僅中選擇退出操作時,程序應詢問是否將修改后的詞典存盤,并根據用戶選擇存盤退出或不存盤退出。要求整個設計以人為本,用戶界面友好。二、總體設計 1、程序共有五個子函數和一個主函數。1search是查找函數,用戶通過系統提示輸入要查找的單詞,只要單詞庫中含有此單詞便能找到相應的中文解釋。這個查找函數使用的是從頭到尾的線性查找發,雖然查找效率在數據很大上午時候無法容忍的。但

7、是因為這里涉及的數據量很小,使用線性查找對系統性能沒有很大上午損害。2.add是增加函數,用戶可通過此函數來增加單詞庫單詞的數量。3.modify是修改函數,程序提示用戶輸入要修改的單詞,還是用線性查找的方法查找相應的紀錄,如果找到,那么提示輸入新單詞及中文解釋。4.delete是刪除函數,程序提示用戶輸入要刪除的單詞,使用線性查找的方法找到相應的紀錄,如果找到,提示用戶確認刪除才做。在得到確認后,刪除這個單詞的紀錄。5.主程序通過無限循環來接收輸入的命令,并且根據命令調用相應的函數處理。2、課題中涉及到的數字主要是英文單詞,和數據1-4,它們都屬于字符型數據,它們的結果還應該是字符型。三:詳

8、細設計四、調試分析與設計體會:1、輸入1就是添加新的單詞,輸入2是刪除已有的單詞,輸入3是查找要找的單詞,它包括兩種方法,1:是輸入英語找單詞,2:是輸入漢語找單詞,輸入4是退出程序。2、感謝老師讓我有時機再次學習C語言.我們這次設計的課題是電子英漢詞典的設計,我們分工為兩個人負責一個模塊.通過這次的程序設計,知道了自己以前在學習C語言方面的缺乏,光是書本上的知識是不夠的,自己編寫出程序也是學習過程中相當重要的一環,以前學習過程中出現的問題在這次課題設計中全都暴露出來.例如:對知識的掌握不牢,程序的理解不透徹等等.所以,我不得不再翻開課本以穩固以前學過的知識,這讓我有效的彌補了知識的漏洞.一開

9、始我就對C語言很感興趣。我覺得每每聽完一堂課,我都有一種說不出的快樂,有時也會發愁,因為課程越往后越難學而且講課進度再加快,但我沒有退縮,每天堅持看C語言。就這樣一步步走到課程設計。雖然在這個實習周里的語言設計遇到了很多困難,但我并沒有退縮,找同學老師幫著改正錯誤,終于完成了,使自己嘗到了成功的甜頭。希望學校繼續給我們這樣的學習時機。五、參考文獻:?C語言程序設計? 主編 蔣清明 人民郵電出版社 2005年12月 ?C語言程序設計實驗指導與習題解答?主編 蔣清明 人民郵電出版社2005年2月六、附錄:原程序設計清單:#include#includemain() static int n=32;

10、char m; struct char eng10; char ci15; char yin10; char chi30; word1000=good,a,goud,hao,aide,n,eid,zhushou,bone,n,boun,gutou,ball,n,bo:,qiu,cat,n,cat,mao,cattle,n,katl,niu,clean,adj+d+v,kli:n,1.gan jin 2.gongzheng,a,num,ei,yi ge,finally,ad,fainens,zuizhong,fine,adj+ad+v+n,fain,1.shushi2.hao,finish,v+

11、n,finish,wancheng,girl,n,ge:l,nvhai,five,v,giv,gei,go,n+v,gou,zou,help,int+n,help,bangzhu,he,pron,hi:,ta,here,ad+ini,hie,zheli,high,aadj+ad+n,hai,gao,ice,n,ais,bing,idea,n,aidie,zhuyi,imagine,v,imadgin,xiangxiang,in,v,in:,zailimian,kill,v,kil,shasi,king,n,king,guowang,kiss,v+n,kis,wen,knight,n+v,nai

12、t,qishi,late,adj+ad,leit,1.chi de 2.yihoude,left,adj+ad+n,left,zuobian,line,n+v,lain,xian,name,n+v,neim,mingzi,mission,v,mision,rengwu; clrscr();loop:for(;) clrscr(); printf(nt *Please make a choise*n); printf(nnt 1.Add the new wordn); printf(t 2.Del wordn); printf(t 3.find wordn); printf(t 4.Exit t

13、he processnn); printf( Please choose 14 to entern); printf( Please press the key:); scanf(%c,&m); switch(m) case 1: char j10,k15,l10,p30;+n;printf(n Add new word);printf(nn please enter the Danci: );scanf( %s,j);printf(n Enter the Cixing:);scanf( %s,k);printf(n Enter the Yingbiao:);scanf( %s,l); pri

14、ntf(n Enter the Chinese:);scanf( %s,p); strcpy(wordn.eng,j); strcpy(wordn.ci,k); strcpy(wordn.yin,l); strcpy(wordn.chi,p);printf(n Please check it:); printf(nn English. %s,wordn.eng); printf(nn Cixing: %s, wordn.ci); printf(nn Yinbiao: %s, wordn.yin); printf(nn Chinese: %snn,wordn.chi); printf(n Ple

15、ase press any key with Enter key back!); scanf(%s,m); goto loop; case 2: char r10; int s,t,u,z=0,x=0; printf( Please press the English you want to del:); scanf(%s,r); for(s=0;s=n;s+) if(s=n-1) if(strcmp(words.eng,r)=0) x=1; for(t=s;tn;t+) strcpy(wordt.eng, wordt+1.eng);strcpy(wordt.ci, wordt+1.ci);s

16、trcpy(wordt.yin, wordt+1.yin);strcpy(wordt.chi, wordt+1.chi); else if(strcmp(wordn.eng,r)=0) z=1; else z=0; if(z=1|x=1)printf(nnDel sucessful!n);n-; printf(n Please press any key with Enter key back!); scanf(%s,m); else printf(nnDel failed!);printf(n Please press any key with Enter key back!);scanf(

17、%s,m); break; case 3: int l;clrscr();printf(nnSearch the wordn); printf( 1.Search by English:n); printf(2.Search by Chinese:n); printf(Other key backn); printf( Please choose one:); scanf(%d,&l); switch(l) case 1: char r10,m1; int s; printf(n Please enter the English word:); scanf(%s,r); for(s=0;s=n

18、;s+) if(s=n-1) if(strcmp(words.eng,r)=0) break; else continue; else if(strcmp(wordn.eng,r)=0) break; else char m1; printf(n No this word!n Please press any key with Enter key back!); scanf(%s,m); goto loop; printf(nn English. %s, words.eng); printf(nn Cixing: %s, words.ci); printf(nn Yinbiao: %s, words.yin); printf(nn Chinese: %s, words.chi); printf(nnn Please press any

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論