版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 背單詞</b></p><p><b> 設(shè)計報告</b></p><p><b> 目 錄 </b></p><p><b> 概述3</b></p><p> 1系統(tǒng)實現(xiàn)的目標3</p><
2、p> 2變量、函數(shù)和結(jié)構(gòu)體說明3</p><p><b> 3樹形結(jié)構(gòu)圖4</b></p><p><b> 4用戶操作說明5</b></p><p><b> 5系統(tǒng)功能設(shè)計9</b></p><p> 6程序有待改進的地方13</p>
3、<p><b> 7設(shè)計體會14</b></p><p><b> 參考文獻14</b></p><p><b> 概述:</b></p><p> 該系統(tǒng)是幫助學(xué)生背誦單詞的軟件,有詞語預(yù)覽功能;用戶可以編輯自己的詞庫,即可增加或刪除單詞;系統(tǒng)可以進行測試,即給出中文,讓學(xué)生
4、輸入其英文,每十個單詞一組,測試結(jié)束能夠顯示成績,即單詞的正確個數(shù);能夠輸入中文或英文進行單詞的查詢。</p><p> 基本功能:詞庫的增加或刪除;</p><p><b> 單詞預(yù)覽;</b></p><p> 顯示中文用戶輸入英文進行測試;</p><p> 用戶輸入中文或英文進行單詞的查詢。</p&
5、gt;<p><b> 1.系統(tǒng)實現(xiàn)的目標</b></p><p> 綜合訓(xùn)練單詞用C語言編程解決問題和處理問題的能力,鞏固對C語言課程內(nèi)容和知識的掌握。</p><p> 2.變量、函數(shù)和結(jié)構(gòu)體說明</p><p><b> ?。?)關(guān)鍵變量說明</b></p><p> i
6、nt x 結(jié)構(gòu)體數(shù)組中元素的數(shù)目</p><p> int n 測試時單詞的正確個數(shù)</p><p> int a 進行菜單選擇</p><p> int m 進行菜單選擇</p><p>&l
7、t;b> (2)函數(shù)定義說明</b></p><p> void foresee(); 單詞預(yù)覽及進行測試</p><p> int intest(); 產(chǎn)生隨機單詞以進行測試</p><p> void test2(int n); 測試單詞的成績</p
8、><p> void testchinese(); 測試單詞</p><p> void translation(); 單詞查詢</p><p> void EtoC(); 輸入單詞,查詢意思</p><p> void CtoE();
9、 輸入中文,查詢單詞</p><p> void word_add(); 單詞添加</p><p> void word_delete(); 單詞刪除</p><p><b> ?。?)結(jié)構(gòu)體說明</b></p><p> struct words
10、單詞結(jié)構(gòu)體定義</p><p> { </p><p> char eword[20]; 單詞</p><p> char cixing[10]; 詞性</p><p> char chinese[50]; 意思
11、</p><p> } </p><p> struct words bank[SIZE] 定義數(shù)組結(jié)構(gòu)體,存儲單詞</p><p><b> 3.樹形結(jié)構(gòu)圖</b></p><p><b> 4. 用戶操作說明</b>&l
12、t;/p><p><b> 運行程序后進行選擇</b></p><p><b> 選擇1.單詞預(yù)覽</b></p><p> 是否要運行測試功能?Y\N</p><p> 輸入Y:進行單詞測試</p><p><b> 輸入N:返回主菜單</b>&
13、lt;/p><p><b> 選擇2.英漢互譯</b></p><p><b> 英譯漢</b></p><p><b> 漢譯英</b></p><p><b> 返回上級菜單</b></p><p><b> 選
14、擇3.單詞添加</b></p><p><b> 選擇4.單詞刪除</b></p><p><b> 選擇5.退出系統(tǒng)</b></p><p><b> 5.程序代碼</b></p><p> #include<stdio.h></p>
15、;<p> #include<stdlib.h></p><p> #include<string.h></p><p> #include<conio.h></p><p> #include<time.h></p><p> #define SIZE 50
16、 //定義詞庫單詞數(shù)量</p><p> void foresee(); //單詞預(yù)覽及進行測試</p><p> int intest(); //產(chǎn)生隨機單詞以進行測試</p><p> void test2(int n); //測試單詞的成績</p><p> vo
17、id testchinese(); //測試單詞</p><p> void translation(); //單詞查詢</p><p> void EtoC(); //輸入單詞,查詢意思</p><p> void CtoE(); //輸入中文,查詢單詞</p><
18、;p> void word_add(); //單詞添加</p><p> void word_delete(); //單詞刪除</p><p> struct words</p><p><b> {</b></p><p> char eword[20];</p&g
19、t;<p> char cixing[10];</p><p> char chinese[50];</p><p> }; //單詞結(jié)構(gòu)體定義</p><p><b> int x;</b></p><p> struct words bank[S
20、IZE]={</p><p> {"aspect","n.","方面,朝向,樣子"},{"according","ad.","依照"},{"accustomde","a.","慣常的,習(xí)慣的"},{"basis",
21、"n.","基礎(chǔ),根據(jù),原則"},{"confidence","n.","信心,信任"},{"dismiss","vt.","不再考慮,解散"},{"economy","n.","經(jīng)濟,節(jié)約,節(jié)省"},{"fa
22、tal","a.","致命的,命運的"},{"global","a.","全球的,總的"},{"helpful","a.","給予幫助的,有用的"},{"impose","vt.","把……加強,征"},{&q
23、uot;largely","ad.","大部分,大量的"},{"mystery","n.","神秘,神秘的人或事"}</p><p> ,{"nuclear","a.","核子的,核能的"},{"obtain","
24、v.","獲得,通用"},{"occasion","n.","場合,時刻"},{"particularly","ad.","尤其,特別"},{"patient","a.","忍耐的,有耐心的"},{"railway&qu
25、ot;,"n.","鐵路"},{"reaction","n.","反應(yīng),反作用"},{"remote","a.","遙遠的,偏僻的"},{"selection","n.","選擇,挑選"},{"setting&
26、quot;,"n.","環(huán)境,背景"},{"shrink","v.","起皺,收縮"},{"translation","n.","翻譯,譯文"},{"troublesome","a.","令人煩惱的,麻煩的"}</
27、p><p> ,{"undergo","vt.","經(jīng)歷,經(jīng)受"},{"unlike","prep.","不像"},{"volunteer","n.","志愿者"},{"virtue","n.",&
28、quot;善,美德"},{"wideapread","a.","分布廣泛的,普通的"},{"withdraw","v.","收回,撤回"},{"absence","n.","缺席,不在"},{"abstract","a.
29、","抽象的,抽象派的"},{"bacteria","n.","細菌"},{"biology","n.","生物學(xué),生態(tài)學(xué)"},{"characterize","vt.","成為…的特征"},{"debate"
30、,"n.,vi.","爭論,辯論"},{"display","vt.","陳列,展覽"}};</p><p><b> //詞庫</b></p><p> void test2(int n) //測試單詞的成績</p><p>
31、;<b> {</b></p><p><b> switch(n)</b></p><p><b> {case 0:</b></p><p><b> case 1:</b></p><p><b> case 2:</b&g
32、t;</p><p> case 3:printf("正確個數(shù):%d \n還需努力!",n);getch();break;</p><p><b> case 4:</b></p><p><b> case 5:</b></p><p> case 6:printf(&
33、quot;正確個數(shù):%d \n還不錯哈!",n);getch();break;</p><p><b> case 7:</b></p><p><b> case 8:</b></p><p><b> case 9:</b></p><p> case 1
34、0:printf("正確個數(shù):%d \nGreat!好樣的!",n);getch();break;</p><p> default:printf("系統(tǒng)故障!");getch();</p><p><b> }</b></p><p><b> }</b></p>
35、<p> int intest() //產(chǎn)生隨機單詞以進行測試</p><p><b> {</b></p><p> srand( (unsigned)time( NULL ) ); </p><p> return (rand() %39+1);</p><p><
36、;b> }</b></p><p> void testchinese() //測試單詞</p><p><b> {</b></p><p> int i,j=0,a;char word[30];</p><p> for(i=0;i<10;i++)</p>
37、<p> { a=intest();</p><p> printf("%s\n請輸入對應(yīng)的單詞:",bank[a].chinese);</p><p> scanf("%s",word);</p><p> if(strcmp(bank[a].eword,word)==0)j++;</p>
38、<p> }test2(j);</p><p><b> }</b></p><p> void foresee() //單詞預(yù)覽及進行測試</p><p><b> {</b></p><p> int a;char ch;</p>&l
39、t;p> puts("單詞 詞性 意思");</p><p> for(a=0;a<SIZE;a++)</p><p> printf("%-16s %-8s %-20s\n",bank[a].eword,bank[a].cixing,bank[a].chinese);</p><
40、;p> printf("是否要運行測試功能?N/Y\n");</p><p> fflush(stdin);</p><p> ch=getchar();</p><p> if(ch=='y'||ch=='Y')</p><p><b> {</b>&
41、lt;/p><p> system("cls");</p><p> testchinese();</p><p><b> }</b></p><p><b> }</b></p><p> void EtoC() //
42、輸入單詞,查詢意思</p><p> {char word[20];int i=0;</p><p> puts("請輸入您要查詢的單詞:");</p><p> scanf("%s",word);</p><p> while(strcmp(bank[i].eword,word)!=0&
43、;&i<SIZE)i++;</p><p> if(i<SIZE)printf("\n該單詞的中文意思為:%s",bank[i].chinese);</p><p> else puts("抱歉,沒有查到您要找的單詞。");</p><p><b> }</b></p>
44、;<p> void CtoE() //輸入中文,查詢單詞</p><p> {char chinese[20];int i=0;</p><p> puts("請輸入您要查詢的中文:");</p><p> scanf("%s",chinese);</p>&l
45、t;p> while(strcmp(bank[i].chinese,chinese)!=0&&i<SIZE)i++;</p><p> if(i<SIZE)printf("\n該單詞的英文為:%s",bank[i].eword);</p><p> else puts("抱歉,沒有查到您要找的單詞。");<
46、;/p><p><b> }</b></p><p> void translation() //進行單詞查詢</p><p><b> {</b></p><p><b> int a;</b></p><p> while(a!=
47、3)</p><p> {puts("請選擇:");</p><p> puts("1.英譯漢");</p><p> puts("2.漢譯英");</p><p> puts("3.返回上級菜單");</p><p> scan
48、f("%d",&a);</p><p><b> switch(a)</b></p><p><b> {</b></p><p> case 1:EtoC();break;</p><p> case 2:CtoE();break;</p><
49、;p> case 3:break;</p><p><b> }}</b></p><p><b> }</b></p><p> void word_add() //單詞添加</p><p><b> {</b></p>&l
50、t;p><b> char ch;</b></p><p><b> do</b></p><p><b> {</b></p><p> puts("請輸入您要添加的單詞:");</p><p> scanf("%s",
51、bank[x].eword);</p><p> puts("請輸入該詞的詞性:");</p><p> scanf("%s",bank[x].cixing);</p><p> puts("請輸入該詞的中文意思:");</p><p> scanf("%s&quo
52、t;,bank[x].chinese);</p><p> puts("您是否還要繼續(xù)?Y/N");</p><p> fflush(stdin);</p><p> ch=getchar();</p><p><b> x++;</b></p><p> }whil
53、e(ch=='Y'||ch=='y');getch();</p><p><b> }</b></p><p> void word_delete() //單詞刪除</p><p> {char word[20];int i=0;</p><p> printf(&q
54、uot;請輸入您要刪除的單詞:");</p><p> scanf("%s",word);</p><p> while(strcmp(bank[i].eword,word)!=0&&i<SIZE)i++;</p><p> if(i<SIZE){</p><p> for(;
55、i<SIZE;i++)</p><p> bank[i]=bank[i+1];</p><p> puts("刪除成功!");}</p><p> else puts("沒有找到對應(yīng)的單詞!");</p><p><b> }</b></p><p
56、> int main() //主函數(shù)</p><p><b> {</b></p><p><b> int m;</b></p><p> puts("歡迎使用背單詞系統(tǒng)");</p><p> while(m!=5)</p&
57、gt;<p><b> {</b></p><p> puts("請選擇您需要的服務(wù):");</p><p> puts("1.單詞預(yù)覽");</p><p> puts("2.英漢互譯");</p><p> puts("3.
58、單詞添加");</p><p> puts("4.單詞刪除");</p><p> puts("5.退出系統(tǒng)");</p><p> scanf("%d",&m);</p><p><b> switch(m)</b></p>
59、;<p><b> {</b></p><p> case 1:foresee();break;</p><p> case 2:translation();break;</p><p> case 3:word_add();break;</p><p> case 4:word_delete()
60、;break;</p><p> case 5:return 0;</p><p> default:puts("您的輸入有誤!");</p><p><b> }</b></p><p><b> }</b></p><p><b>
61、 }</b></p><p> 6.程序有待改進的地方</p><p> 1、該程序?qū)嶋H上有許多地方是 可以修改的,因為它在一定程度上使用不是那么便捷。在排序函數(shù)以及設(shè)計儲存結(jié)構(gòu)上不是很方便也不夠簡單。我想很多原因就是沒有較好的掌握知識,并且沒有靈活的運用,但是我認為只要我在這個方面下功夫一定可以取得更好的成績。</p><p> 2、還有就是在給
62、函數(shù)排序的時候,使用的函數(shù)并不是那么恰當。就是因為在知識以及技巧方面掌握的不夠好,希望在以后的學(xué)習(xí)當中能夠?qū)W到更多,以便能更好的完成程序,使程序變得更加完美!</p><p> 3、在中譯英中,若文字沒有完全對應(yīng),查不到其英文解釋。</p><p><b> 7.設(shè)計體會</b></p><p> 1、認識到基礎(chǔ)的重要性,在以后的學(xué)習(xí)中,
63、更要注重基礎(chǔ)的掌握。 </p><p> 2、還有在能力方面需要提高程序設(shè)計和調(diào)試能力。通過上機實習(xí),驗證自己設(shè)計的算法的正確性。學(xué)會有效利用基本調(diào)試方法,迅速找出程序代碼中的錯誤并且修改。并且很快的根據(jù)一些錯誤的信息可以找到解決錯誤的方法。</p><p> 3、本次的課程設(shè)計,培養(yǎng)了我綜合應(yīng)用數(shù)據(jù)結(jié)構(gòu)、c、c++這幾門課解決問題的能力,在設(shè)計的過程中還培養(yǎng)出了我的耐心及細心,請教老
64、師和同學(xué)也解決了許多個人無法解決的問題,在今后的學(xué)習(xí)過程中我會更加努力。</p><p><b> 參考文獻</b></p><p> [1] 楊有安. 程序設(shè)計基礎(chǔ)教程(C語言). 人民郵電出版社,2009.</p><p> [2] 張莉. 大學(xué)計算機基礎(chǔ)教程.清華大學(xué)出版社,2009.</p><p> [
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- c語言背單詞課程設(shè)計報告
- c語言課程設(shè)計報告--背單詞
- c語言背單詞課程設(shè)計報告
- c語言課程設(shè)計-背單詞系統(tǒng)
- c語言課程設(shè)計--背單詞系統(tǒng)的程序代碼
- c語言編程必背單詞
- c語言編程必背單詞
- c語言課程設(shè)計報告
- c語言課程設(shè)計報告
- c語言課程設(shè)計報告
- c語言課程設(shè)計報告
- c語言課程設(shè)計報告(宿舍管理系統(tǒng))
- c語言課程設(shè)計報告—服裝銷售系統(tǒng)
- c語言課程設(shè)計報告--車票管理系統(tǒng)
- c語言課程設(shè)計報告--成績管理系統(tǒng)
- c語言課程設(shè)計報告(宿舍管理系統(tǒng))
- c語言課程設(shè)計報告---銷售管理系統(tǒng)
- c語言課程設(shè)計報告-物資管理系統(tǒng)
- c語言語言課程設(shè)計報告
- c語言課程設(shè)計報告飛機訂票系統(tǒng)
評論
0/150
提交評論