C課程設(shè)計(jì)+背單詞_第1頁
C課程設(shè)計(jì)+背單詞_第2頁
C課程設(shè)計(jì)+背單詞_第3頁
C課程設(shè)計(jì)+背單詞_第4頁
C課程設(shè)計(jì)+背單詞_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、高級語言程序設(shè)計(jì)課程設(shè)計(jì)報告題目:背單詞系統(tǒng)專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)班級:姓名:指導(dǎo)教師:成績:計(jì)算機(jī)與信息工程系2014年6月2日目錄1 設(shè)計(jì)內(nèi)容及要求21.1 設(shè)計(jì)內(nèi)容21.2 設(shè)計(jì)任務(wù)及具體要求22 概要設(shè)計(jì)32.1、數(shù)據(jù)結(jié)構(gòu)和全局變量32.2模塊列表33 樹形結(jié)構(gòu)模塊圖44 調(diào)試過程55 設(shè)計(jì)結(jié)果與分析66 設(shè)計(jì)體會7參考文獻(xiàn)8源程序清單8 1 設(shè)計(jì)內(nèi)容及要求1.1 設(shè)計(jì)內(nèi)容 該系統(tǒng)是幫助用戶背單詞的軟件,要求用戶可以選擇背誦的,并可以編輯自己的詞庫,系統(tǒng)可以給出中文,讓單詞輸出其英文意思,也可以輸出英文讓單詞輸入中文意思,并判斷其意思是否正確,如不正確給出提示并要求用戶重新輸入。如正確

2、給以鼓勵。還應(yīng)有詞語預(yù)覽功能?;竟δ埽?詞庫的維護(hù) 課程預(yù)覽 顯示中文用戶輸入英文的背誦方法 顯示英文用戶輸入中文的背誦方法 背誦成績的記錄1.2 設(shè)計(jì)任務(wù)及具體要求 1、盡量多的應(yīng)用C語言中所學(xué)到的知識和語句 2、課程設(shè)計(jì)前應(yīng)書寫開題報告主要內(nèi)容包括(對題目的分析和對該課程設(shè)計(jì)的概要設(shè)計(jì)) 3、課程設(shè)計(jì)后應(yīng)交課程設(shè)計(jì)報告,和軟件原代碼及編譯后的應(yīng)用軟件 4、課程設(shè)計(jì)最后一次上機(jī)實(shí)驗(yàn)時檢查題目的完成情況 5、課程設(shè)計(jì)中必須用到的內(nèi)容為 a) 文件的存取 b)結(jié)構(gòu)體的使用 c)數(shù)組的使用 d)指針操作2 概要設(shè)計(jì)2.1、數(shù)據(jù)結(jié)構(gòu)和全局變量1)單詞信息的結(jié)構(gòu)體如下:typedefstructwo

3、rd/單詞的結(jié)構(gòu)體 charenMAX_CHAR;/英文形式 charnoMAX_CHAR;/中文形式word; 2)存放單詞的信息的變量如下:wordsMAX_NUM;/單詞數(shù)組intnum;/單詞個數(shù)2.2模塊列表#defineMAX_CHAR20/*最大字符*/#defineMAX_NUM100/*單詞的最大個數(shù)*/voidread_from_file()/*從文件中讀取單詞的信息*/voidwrite_to_file()/*從文件中讀取單詞的信息*/voidadd_infor()/*添加單詞信息*/voiddel_infor()/*刪除單詞信息*/voidmodify_infor()/

4、*修改單詞信息*/voidsearch_infor()/*查詢單詞*/3 樹形結(jié)構(gòu)模塊圖學(xué)生背單詞系統(tǒng)讀取文件信息添加單詞信息刪除單詞信息修改單詞信息顯示單詞信息背誦(中至英)背誦(英至中)查詢成績寫入文件信息4 調(diào)試過程(1)、運(yùn)行界面如圖:(2)、添加單詞(3) 、修改單詞信息5 設(shè)計(jì)結(jié)果與分析 當(dāng)把程序?qū)懞貌⑦M(jìn)行調(diào)試時,并不是一帆風(fēng)順的,總會遇到很多在調(diào)試時遇到的錯誤。1. 首先在定義函數(shù)時,不能輸入漢字。否則會程序會顯示錯誤。2. 在程序中,前后定義變量要統(tǒng)一。3. 如果要調(diào)用添加函數(shù),修改函數(shù),修改函數(shù),查找函數(shù),統(tǒng)計(jì)函數(shù)等要在主函數(shù)前面進(jìn)行申明。否則會顯示警告。4. 如果程序在運(yùn)行

5、的過程中,對于一個循環(huán)語句,如果你返回的值始終是真的,那么程序?qū)⑦M(jìn)如死循環(huán)。5. 未注意int,float型數(shù)據(jù)的數(shù)值范圍,int型數(shù)據(jù)的數(shù)值范圍(-3276832768)。6. 對應(yīng)該有花括弧的復(fù)合語句,忘記加花括弧。7. 所調(diào)用的函數(shù)在調(diào)用語句之后才定義,而又在調(diào)用前未加說明。6 總結(jié) 經(jīng)過兩周的課程設(shè)計(jì),我學(xué)到了很多東西,鞏固和加深了對變量、函數(shù)以及數(shù)據(jù)結(jié)構(gòu)等內(nèi)容的理解,讓我對c語言有了更深的認(rèn)識;提高綜合運(yùn)用本課程所學(xué)知識的能力增;增強(qiáng)了我獨(dú)立思考、深入研究、分析問題、解決問題的能力;同時通過課程設(shè)計(jì),也增強(qiáng)了我嚴(yán)肅認(rèn)真的學(xué)習(xí)態(tài)度。 由于學(xué)習(xí)c語言的時間相對來說短了一些,并且課程結(jié)束的

6、比較倉促,所以,在課程設(shè)計(jì)的過程中,一開始感覺一頭霧水,遇到了很多問題,許多課本的知識不能夠靈活的掌握,所以進(jìn)行了反復(fù)的實(shí)驗(yàn),把自己所遇到的問題和疑惑向同學(xué)請教,或者上網(wǎng)查詢資料,才將程序一點(diǎn)一點(diǎn)的補(bǔ)充完整。 通過此次課程設(shè)計(jì),使我對C語言有了更進(jìn)一步的認(rèn)識和了解,要想學(xué)好它,不僅要有扎實(shí)的理論基礎(chǔ),還要進(jìn)行大量的實(shí)驗(yàn),要通過不斷的上機(jī)操作才能更好地學(xué)習(xí)它,更讓我發(fā)現(xiàn)自己的好多不足之處,對C語言的一些標(biāo)準(zhǔn)庫函數(shù)不太了解,還有對函數(shù)調(diào)用的正確使用不夠熟悉,還有對C語言中經(jīng)常出現(xiàn)的錯誤也不了解。通過實(shí)踐的學(xué)習(xí),我認(rèn)識到學(xué)好計(jì)算機(jī)要重視實(shí)踐操作,不僅僅是學(xué)習(xí)C語言,還是其它的語言,以及其它的計(jì)算機(jī)方

7、面的知識都要重在實(shí)踐,所以后在學(xué)習(xí)過程中,我會更加注視實(shí)踐操作,使自己便好地學(xué)好計(jì)算機(jī)。 雖然此次課程設(shè)計(jì)提高了我的編程的能力,但是還是有不足之處,請老師指正。 參考文獻(xiàn)1 譚浩強(qiáng)C程序設(shè)計(jì)題解與上機(jī)指導(dǎo)北京:清華大學(xué)出版社,2009 2 廖雷C語言程序設(shè)計(jì)北京:高等教育出版社,20063 賈學(xué).宋海民C語言程序設(shè)計(jì)北京:中國鐵道出版社,20074 趙海廷C語言程序設(shè)計(jì)北京:人民郵電出版社,20065 范剛龍.王康平.C程序設(shè)計(jì).武漢:武漢理工大學(xué)出版社,20066 張強(qiáng)華. C 語言程序設(shè)計(jì).北京:人民郵電出版社,20107 徐新華. C 語言程序設(shè)計(jì)教程.北京: 清華大學(xué)出版社,20108

8、 譚浩強(qiáng). C 語言程序設(shè)計(jì).北京: 清華大學(xué)出版社,20119.C語言課程設(shè)計(jì)案例精編,吳啟武等編著,清華大學(xué)出版社出版,10.C語言課程設(shè)計(jì)案例精編,郭翠英等編著,中國水利水電出版社出版。 源程序#include #include #include #define MAX_CHAR 20 / 最大字符#define MAX_NUM 100 / 單詞的最大個數(shù)typedef struct word/單詞的結(jié)構(gòu)體 char enMAX_CHAR; / 英文形式 char noMAX_CHAR; /中文形式word;word sMAX_NUM; /單詞數(shù)組int num=2; /單詞個數(shù)void

9、 read_from_file()/從文件中讀取單詞的信息 FILE *fp; int i=0; fp=fopen(data.txt,rb); if(!fp) return; fread(&num,1,sizeof(num),fp); /先讀取單詞的個數(shù) for(i=0;inum;i+) fread(&si,1,sizeof(word),fp); /讀取每個單詞的信息存放到結(jié)構(gòu)體 fclose(fp);/關(guān)閉文件void write_to_file()/從文件中讀取單詞的信息 FILE *fp; int i=0; fp=fopen(data.txt,wb+); if(!fp) return;

10、fwrite(&num,1,sizeof(num),fp); /先寫入單詞的個數(shù) for(i=0;inum;i+) fwrite(&si,1,sizeof(word),fp); /寫入每個單詞的信息 fclose(fp);/關(guān)閉文件void add_infor()/添加單詞信息 int i=num; printf(請輸入單詞的英文形式:); scanf(%s,si.en); printf(請輸入單詞的中文形式:); scanf(%s,si.no); num+; printf(添加成功);void del_infor()/刪除單詞信息 int i=0,j=0; char noMAX_CHAR;

11、/中文形式 printf(請輸入你要刪除的單詞中文形式:); scanf(%s,no); for(i=0;inum;i+)/先找到該中文形式對應(yīng)的序號 if(strcmp(si.no,no)=0) for(j=i;jnum-1;j+) sj=sj+1; num-; /數(shù)量減少 1 return; printf(沒有這個單詞!);void modify_infor()/修改單詞信息 int i=0; char noMAX_CHAR; /中文形式 printf(請輸入你要修改的單詞中文形式:); scanf(%s,no); for(i=0;inum;i+)/先找到該中文形式對應(yīng)的序號 if(str

12、cmp(si.no,no)=0) printf(請輸入單詞正確的英文形式:); scanf(%s,si.en); printf(請輸入此單詞正確的的中文形式:); scanf(%s,si.no); return; printf(沒有這個單詞!);void show_infor() int i=0; printf(單詞: 英文 中文 n); for(i=0;inum;i+) printf( %10s%10sn,si.en,si.no);void search_infor()/查詢單詞 int i=0; char noMAX_CHAR; /中文形式 printf(請輸入你要查詢的單詞中文形式:);

13、 scanf(%s,no); for(i=0;inum;i+)/先找到該中文形式對應(yīng)的序號 if(strcmp(si.no,no)=0) printf(英文形式 中文形式 n); printf(%10s%12sn,si.en,si.no); return; printf(沒有這個中文形式!);void zy_infor() char b120; int z,d=0,c=0; int i; i = rand()%num; printf(【%s】請輸入英文單詞:,si.no); scanf(%s,b1); for(z=0;strcmp(b1,si.en)!=0;z=z) printf(輸入錯誤!請

14、重新輸入:);scanf(%s,b1);c=c+1; printf(n恭喜你,回答正確,加10分!nn);d=d+1; printf(Enter 2 繼續(xù)輸入:,si.en,si.no);void yz_infor() char b120; int z,x=41,d=0,c=0; int i; i = rand()%num; printf(【%s】請輸入中文意思:,si.en); scanf(%s,b1); for(z=0;strcmp(b1,si.no)!=0;z=z) printf(輸入錯誤!請重新輸入:);scanf(%s,b1);c=c+1; printf(n恭喜你,回答正確,加10分

15、!nn);d=d+1; printf(n Enter 3 繼續(xù)輸入; Enter 1 返回主菜單,si.en,si.no);void chengji_infor() int c=0,d=0; printf(n 共計(jì)輸入錯誤:%d次 *每次扣10分*n,c); printf( 共計(jì)輸入正確:%d次 *每次加10分*n,d); printf( 你的總得分為:%d分nn,10*d-10*c);void show_main_menu() printf(n); printf( 背 單 詞 系 統(tǒng) n); printf( n); printf( 作者 : 儲鳳珍 n); printf( n); print

16、f( 1、添加單詞信息 2、刪除單詞信息 n); printf( n); printf( 3、修改單詞信息 4、顯示單詞信息 n); printf( n); printf( 5、背誦(中至英) 6、背誦(英至中) n); printf( n); printf( 7、查詢成績 8、退出 n); /用戶界面 printf( 請選擇您需要的操作序號(1-8)按回車確認(rèn):); int main() int a,choose=0; num=0;/初始化單詞個數(shù)為0 read_from_file(); /讀取文件 show_main_menu(); scanf(%d,&choose); printf(n); while(choose!=8) switch(choose) case 1: add_infor();break; ca

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論