課程設(shè)計報告記憶力測試C#語言_第1頁
課程設(shè)計報告記憶力測試C#語言_第2頁
課程設(shè)計報告記憶力測試C#語言_第3頁
課程設(shè)計報告記憶力測試C#語言_第4頁
課程設(shè)計報告記憶力測試C#語言_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、沈 陽 航 空 航 天 大 學(xué) 課程設(shè)計 學(xué) 號 143403030222班 級姓 名 指導(dǎo)教師 _2015年 10 月 29 日沈陽航空航天大學(xué)課程設(shè)計任務(wù)書系:航空宇航工程學(xué)部 業(yè):飛行器制造工程 班級:1434030302學(xué)號:143403030222題目:記憶力測試201516第1學(xué)期第9周,即10月26日10月30日,共計1周,20學(xué)時。二、課程設(shè)計內(nèi)容 用c#設(shè)計一個記憶力測試系統(tǒng)。管擦測試界面出現(xiàn)的字母,幾秒鐘后默寫出現(xiàn)的字母,免疫管難度增加,由最開始出現(xiàn)的一個字母,到兩個字母,直至最多出現(xiàn)8個字母,測試者可以選擇從頭開始測試或單關(guān)重新測試。 (1)創(chuàng)建

2、圖形界面,并在其中周期顯示不同的字母; (2)顯示關(guān)號,隨著關(guān)號的增長,難度增加,字母數(shù)目增加; (3)最后顯示成績。三、課程設(shè)計要求程序質(zhì)量要求: 貫徹面向?qū)ο蟪绦蛟O(shè)計思想。 設(shè)計用戶圖形界面,界面友好,功能明確,操作方便。 可以加以其它功能或修飾。 代碼簡潔清晰,并給出必要的注釋,以增強(qiáng)程序的可讀性。課程設(shè)計說明書: 課程結(jié)束后,上交課程設(shè)計說明書和源程序。課程設(shè)計說明書的內(nèi)容參見提供的模板。四、指導(dǎo)教師和學(xué)生簽字指導(dǎo)教師:_ 學(xué)生簽名:_五、成績六、教師評語沈陽航空航天大學(xué)設(shè)計用紙目錄一、需求分析1二、設(shè)計分析3三、主要界面截圖5四、技術(shù)要點6五、個人總結(jié)7六、參考文獻(xiàn)7七、源程序712

3、1、 需求分析該系統(tǒng)是一個典型的記憶力測試系統(tǒng),系統(tǒng)應(yīng)該具有安全性,穩(wěn)定性和功能齊全的特點。1,功能性 該系統(tǒng)可以讓你對你自己的記憶里有一個客觀的認(rèn)識,在以后的學(xué)習(xí)和生活中對自己的記憶力有一個初步的了解,對以后的學(xué)習(xí)效率有一個顯著的提高。2,穩(wěn)定性 該系統(tǒng)比較健全,界面清晰,只要合理操作,就可以達(dá)到預(yù)定的功能,不會出現(xiàn)錯誤。2、 設(shè)計分析通過定義26個大小寫字母,再隨機(jī)抽取輕重的1到8個字母出現(xiàn),實現(xiàn)了隨機(jī)出現(xiàn)字母。頁面加載時初始化游戲界面,游戲開始時再清空正確字母文本框,然后產(chǎn)生隨機(jī)字符,計時器開始工作,十秒后出現(xiàn)答題界面,計時器停止,開始答題,正確,遞進(jìn)入下一關(guān),錯誤,則提示失敗。定義從新

4、開始,則初始化游戲界面,從新開始出現(xiàn)隨機(jī)字母!定義tab,按順序選關(guān)!3、 主要界面截圖開始界面成功界面答題界面四、技術(shù)要點1定義字符串?dāng)?shù)組,以此生成隨機(jī)字符串,字符串不包含o,p,s,z 四個大小寫不容易分辨的字符。 string s1 = a, b, c, d, e, f, g, h, i, j, k, l, m, n, q, r, t, u, v, w, y, a, b, c, d, e, f, g, h, i, j, k, l, m, n, q, r, t, u, v, w, y ;2開始答題時,清空正確答案文本框 zqdatxt.text = 3計時器開始工作 this.timer1

5、.interval+; int num = 0; num = this.timer1.interval - 1000; if (num 11) int jsn = 10 - num;4控制關(guān)卡按鈕可用,實現(xiàn)功能,過完第一關(guān),系統(tǒng)開啟第二關(guān)按鈕 control bt=pfrm.controls.find(dygbt,true); if(gknum=1) bt=pfrm.controls.find(degbt,true); else if(gknum=2)4默認(rèn)選中第一關(guān),通過tab可以進(jìn)行選關(guān)操作。 dygbt.tabindex = 0;degbt.tabindex = 1;5選關(guān)按鈕,第一關(guān),

6、以此類推 private void dygbt_click(object sender, eventargs e) gamefrm gfrm = new gamefrm(1,this); gfrm.showdialog(); 5、 個人總結(jié) 在這次的課設(shè)中,我學(xué)到了許多東西,有較為深刻的體會和感想。在編寫程序時遇到了很多的問題,要發(fā)揚好學(xué)好問的精神,積極探索,尋找答案,而不是坐以待斃,在這個過程中,要心有毅力,不能半途而廢,只有這樣才能完成任務(wù)。 經(jīng)過一個星期的摸索與學(xué)習(xí),我對c#有了更深刻的理解,只是,有很多的東西是從別的地方生搬硬照過來的,對c#的運用不是十分的深刻。這個需要我以后的學(xué)習(xí)。

7、在以后的上學(xué)習(xí)生活中,我會更加認(rèn)真仔細(xì)的學(xué)習(xí)。6、 參考文獻(xiàn) 網(wǎng)絡(luò)搜索7、 源程序using system;using system.collections.generic;using system.componentmodel;using system.data;using system.drawing;using system.text;using system.windows.forms;namespace mtest public partial class gamefrm : form /定義變量,接收關(guān)卡數(shù) int gknum = 0; /定義字符串?dāng)?shù)組,以此生成隨機(jī)字符串,字符串

8、不包含o,p,s,z 四個大小寫不容易分辨的字符 string s1 = a, b, c, d, e, f, g, h, i, j, k, l, m, n, q, r, t, u, v, w, y, a, b, c, d, e, f, g, h, i, j, k, l, m, n, q, r, t, u, v, w, y ;/字符列表 startfrm pfrm=null; public gamefrm(int gnum,startfrm sfrm) initializecomponent(); gknum = gnum; pfrm = sfrm; /界面加載時初始化游戲界面 private

9、void gamefrm_load(object sender, eventargs e) dtjslb.text = 答題計時:10秒; zqdalb.visible = false; zqdatxt.visible = false; qrbt.visible = false; rstbt.visible = false; private void startbt_click(object sender, eventargs e) /開始答題時,清空正確答案文本框 zqdatxt.text = ; /計算器開始計時 this.timer1.start(); /產(chǎn)生待記憶隨機(jī)字符串 rando

10、m rand = new random();/實例化rand string str = null; for (int i = 0; i gknum; i+) str +=s1rand.next(0, s1.length); this.lb.text = str; private void timer1_tick(object sender, eventargs e) /計時器開始工作 this.timer1.interval+; int num = 0; num = this.timer1.interval - 1000; /如果十秒之內(nèi),只計時 if (num 11) int jsn = 1

11、0 - num; this.dtjslb.text = 答題計時: + jsn.tostring() + 秒; else /十秒以后,出現(xiàn)答題界面,計時器停止,并重新初始化 timer1.stop(); this.timer1.interval = 1000; lb.visible = false; startbt.visible = false; zqdalb.visible = true; zqdatxt.visible = true; qrbt.visible = true; rstbt.visible = true; zqdatxt.focus(); private void qrbt

12、_click(object sender, eventargs e) /獲取正確答案 string daanstr = zqdatxt.text.trim(); if (daanstr.equals(lb.text.trim()/如果答案正確,提示闖關(guān)成功。 messagebox.show(闖關(guān)成功!恭喜你,你已經(jīng)獲得了:+gknum+分。); /控制關(guān)卡按鈕可用,實現(xiàn)功能,過完第一關(guān),系統(tǒng)開啟第二關(guān)按鈕 control bt=pfrm.controls.find(dygbt,true); if(gknum=1) bt=pfrm.controls.find(degbt,true); else

13、if(gknum=2) bt=pfrm.controls.find(dsgbt,true); else if(gknum=3) bt=pfrm.controls.find(dsigbt,true); else if(gknum=4) bt=pfrm.controls.find(dwgbt,true); else if(gknum=5) bt=pfrm.controls.find(dlgbt,true); else if(gknum=6) bt=pfrm.controls.find(dqgbt,true); else if(gknum=7) bt=pfrm.controls.find(dbgbt

14、,true); else if(gknum=8) return; if(bt.length1) return; button gbt = (button)bt0; gbt.enabled = true; gbt.focus(); this.close(); else messagebox.show(闖關(guān)失??!);/如果答案錯誤,提示闖關(guān)失敗 /重新開始,初始化游戲界面 private void rstbt_click(object sender, eventargs e) dtjslb.text = 答題計時:10秒; lb.text = ; zqdalb.visible = false; z

15、qdatxt.visible = false; qrbt.visible = false; rstbt.visible = false; startbt.visible = true; lb.visible = true; private void gamefrm_formclosing(object sender, formclosingeventargs e) using system;using system.collections.generic;using system.componentmodel;using system.data;using system.drawing;usi

16、ng system.text;using system.windows.forms;namespace mtest public partial class startfrm : form public int score = 0; public startfrm() initializecomponent(); private void startfrm_formclosing(object sender, formclosingeventargs e) application.exit(); private void startfrm_load(object sender, eventar

17、gs e) dygbt.tabindex = 0; degbt.tabindex = 1; dsgbt.tabindex = 2; dsigbt.tabindex = 3; dwgbt.tabindex = 4; dlgbt.tabindex = 5; dqgbt.tabindex = 6; dbgbt.tabindex = 7; degbt.enabled = false; dsgbt.enabled = false; dsigbt.enabled = false; dwgbt.enabled = false; dlgbt.enabled = false; dqgbt.enabled = f

18、alse; dbgbt.enabled = false; private void dygbt_click(object sender, eventargs e) gamefrm gfrm = new gamefrm(1,this); gfrm.showdialog(); private void degbt_click(object sender, eventargs e) gamefrm gfrm = new gamefrm(2,this); gfrm.showdialog(); private void dsgbt_click(object sender, eventargs e) gamefrm gfrm = new gamefrm(3,this); gfrm.showdialog(); private void dsigbt_click(object sender, eventargs e) gamefrm gfrm = new gamefrm(4,this); gfrm.showdialog(); private void dwgbt_click(object sender, eventargs e) gamefrm gfrm = new gamefrm(5,this); gfrm.showdialog(); private void dlgbt_click(

溫馨提示

  • 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

提交評論