




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、 計算機學院計算機科學與技術專業(yè)程序設計綜合課程設計報告 (2011/2012學年 第一學期)學生姓名: 學生班級: 學生學號: 指導教師: 2011年12月31日記憶力小游戲目 錄第一章課程設計的目的和要求11.1 課程設計的目的11.2 課程設計的實驗環(huán)境11.3 課程設計要求1第二章 課程設計任務內(nèi)容22.1背景22.2功能22.3可行性 2第三章 詳細設計說明33.1 主函數(shù)的流程圖33.2各個子函數(shù)的流程圖63.3功能及使用說明8第四章 調(diào)試運行結果10第五章 課程設計心得與體會13附錄1:參考文獻15附錄2:程序清單1627 / 30文檔可自由編輯打印第一章 課程設計的目的和要求1
2、.1課程設計的目的通過課程設計的訓練,我們能夠了解程序設計的基本開發(fā)過程,掌握編寫、調(diào)試和測試C+語言程序的基本技巧,培養(yǎng)解決實際問題的能力和養(yǎng)成嚴謹?shù)膽B(tài)度、習慣。通過一個簡單的程序設計,我們能夠進一步熟悉C+中有關各種知識的運用與掌握,理論與實踐相結合。設計過程中,我們獨立思考,積極動手實驗,逐步熟悉程序設計的方法,進一步培養(yǎng)完善的C+編程設計思維,為以后的程序設計學習打下一個牢固基礎。1.2課程設計的實驗環(huán)境 該程序設計的設計和實驗過程需要在windows 7環(huán)境下的Microsoft Visual Studio 2008的平臺下進行,從而完成代碼的編寫、編譯、調(diào)試等工作。1.3課程設計要
3、求首先要參考相關書籍學習課程設計的基本知識,了解你所要做的程序的實驗環(huán)境,清楚所開發(fā)程序的相關功能,并對各個功能模塊進行分析,然后在平臺上進行編寫、編譯、調(diào)試等操作。程序設計要求自己選題,所做程序要便于操作和使用,在設計過程中熟練掌握相關知識,循軟件開發(fā)過程的基本規(guī)范,運用結構化程序設計的方法,詳細體會并記錄相關過程,并將心得體會寫在課程設計報告中,設計完成后提交課程設計報告。第二章 課程設計任務內(nèi)容2.1背景 隨著知識時代的來臨,記憶力與知識的掌握程度變得越來越重要,而如今的學生特別是部分大學生由于自制力不夠,把時間花在玩游戲和睡覺上,沒有求知欲,從而導致記憶力下降,這對以后的生活和工作是非
4、常不利的,所以為了改變這一現(xiàn)象,并且有效的提高他們的能動性,設計了這一“記憶力小游戲”程序,游戲簡單易上手,老少皆宜,經(jīng)過一些同學驗證,它確實對記憶力的提高有益。2.2功能需求 1、程序以菜單方式工作 2、程序有錄入、選擇難度和退出功能 3、程序給出一句話讓參與者在規(guī)定的時間內(nèi)記憶,然后打亂這句話的順序讓參與者按照顯示出的文字的順序?qū)懗?,進行兩次,最后系統(tǒng)會提示讓參與者寫出第一次顯示出的文字 4、參與者也可以選擇自己輸入一句話進行游戲,其他內(nèi)容按照功能3 5、程序有打分功能,每次游戲結束后給參與者打分并顯示分數(shù)2.3可行性從技術上來說,C+語言是高級編程語言,它可以編寫應用程序,并且能夠成功運
5、行,在windows 7系統(tǒng)中的Microsoft Visual Studio 2008的平臺下,我已經(jīng)實驗成功,程序雖然有些小的不足,但是大體上還是差強人意的。從操作上來說,在明白游戲基本規(guī)則的情況下,進行簡單的鍵盤操作即可游戲,游戲簡單易懂,在閑暇的時候,它能給您帶來樂趣的同時鍛煉記憶力。第三章 詳細設計說明 3.1 主函數(shù)的流程圖開始srand(time(0);game_select();string menu_str輸入menu_strmenu_str=1clear_viewprot();begin_game();menu_str=2menu_str=3menu_str=4end_ga
6、me();clear_viewprot();clear_viewprot();set_game_content();clear_viewprot();set_game_setup();clear_viewprot();game_select();clear_viewprot();game_select();string ran_str1;string input_str;string ran_str2;string s; int i=0;int num=1; string str;Setup=1Setup=3Setup=5Setup=7ABDCran_str1=random_string(st
7、r);str=ch;str=ch1;str=ch2;str=ch3;delay(t);i=0; i < 2 ; i+clear_viewprot();ran_str2=random_string(str);輸入input_strinput_str!=ran_str2輸入input_strclear_viewprot();clear_viewprot();ran_str2=random_string(str);輸入input_strinput_str=ran_str1ADCBEt<=40t=t-5;結束num+; setup=setup+1;end_game();s0='1&
8、#39;s0='2't>40clear_viewprot();point=point*2+strlen(ch);輸入spoint>0clear_viewprot();goto begin;t<150t=t+5;point=point-10;輸入ss0='2'end_game();s0='1'E圖3-1主函數(shù)流程圖3.2 各個子函數(shù)的流程圖子函數(shù)void set_game_content()的流程圖:clear_viewprot();開始getchar();cin.getline (ch,400);請輸入你要設置的測試內(nèi)容:結束g
9、ame_select();圖3-2-1 void set_game_content()函數(shù)流程圖子函數(shù)void set_game_setup()的流程圖:開始輸入setup請輸入游戲的難度clear_viewprot();Fsetup= 1;t=100;setup=1game_select();結束setup= 7;t=80;setup=2setup=3setup=4setup=1;t=100;setup=3;t=90;setup=5;t=80;setup=7;t=80;setup<=0setup>=4F圖3-2-2 void set_game_setup()函數(shù)流程圖子函數(shù)voi
10、d delay(int t)、void end_game()、void clear_viewprot()的流程圖:開始結束i=0;i<15000000*t;i+int ii+圖3-2-3 void delay(int t)函數(shù)流程圖開始結束Now,game over.GoodBye !clear_viewprot();圖3-2-4 void end_game()函數(shù)流程圖開始結束*記憶力小游戲*" 設計者:李征 設計時間:/12/24 "*"system("cls")圖3-2-5 void clear_viewprot()函數(shù)流程圖3.3
11、 功能及使用說明1、此程序包含八個函數(shù):int main();void set_game_content();void begin_game();void set_game_setup();void game_select();void delay(int t);void end_game();void clear_viewprot()其中:int main()主函數(shù),里面包含菜單函數(shù);void set_game_content()輸入內(nèi)容設置界面,其中參與者可更改程序初始輸出內(nèi)容;void begin_game()游戲開始界面,輸出文字并要求參與者之后輸入相同的文字;void set_gam
12、e_setup()游戲難度設置界面,可供參與者選擇難度;1void game_select()游戲菜單界面;void delay(int t)延時函數(shù);2void end_game()游戲結束界面;void clear_viewprot()清楚屏障功能。2、在windows操作系統(tǒng)下打開該軟件,根據(jù)游戲的提示,按1直接開始游戲,按2會進入輸入測試內(nèi)容界面,在里面參與者可設置測試內(nèi)容,按3會進入難度選擇界面,里面有4種難度,分別為1、2、3、4,對應簡單、中等、困難和瘋狂,按4會退出游戲。每次游戲的結束,程序都會給參與者打分,游戲成功,參與者可以選擇下一難度或者退出,游戲失敗,假如在較高難度,參
13、與者可以選擇較低難度或者退出,如果參與者在最低難度就失敗,那就會直接退出或者重新在這一難度游戲了。第四章 調(diào)試運行結果1、初始界面,提供功能選擇,輸入相應數(shù)字。圖4-1 程序截圖一2、選擇2,輸入你要設置的測試內(nèi)容。圖4-2 程序截圖二3、選擇3,提供游戲難度選擇。 圖4-3 程序截圖三4、選擇4,退出游戲。圖4-4 程序截圖四5、分別對應游戲難度1、2、3、4的測試內(nèi)容。圖4-5 程序截圖五6、幾秒之后,對應難度1出現(xiàn)的界面。圖4-6 程序截圖六7、輸入正確后出現(xiàn)的界面。圖4-7 程序截圖七8、輸入正確后,程序會給出分數(shù)并且有難度和退出游戲的選擇。 圖4-8程序截圖八第五章 課程設計心得與體
14、會在這個學期末,我們終于迎來了期盼已久的課程設計,課程設計剛開始的時候,感覺很簡單,不就是做一個程序嘛,可是老師一說要求我就徹底傻眼了,200多行的代碼,幸虧可以借鑒,但是要有自己的東西在里面。還有一點比較好的地方就是老師說要我們自己選題,什么游戲啊,測試啊,都可以,我選的是一個叫記憶力小游戲的程序,剛開始的時候和其他人一樣,也是一籌莫展,不知道從什么地方入手,所以不知不覺中我把它當做是一種挑戰(zhàn)。人就是這樣,困哪像彈簧,你強它就弱,你弱它就強。三周的時間來做這個程序?qū)ξ襾碚f已經(jīng)足夠,雖然有的部分還是需要學習,不過在溫習過去知識和各種泡圖書館的前提下,我的信心增加了不少,并想出了實際的過程模型。
15、三周的時間沒有白費,我不僅完成了自己的程序設計,而且在余下的時間里把另一個程序做了較大改動??粗绦虻臐u漸完善,我的心里也有很大的觸動,畢竟是我的第一個程序啊,雖然由于之前沒有經(jīng)驗,缺少具體的準則,語言也很生硬,但是看著程序的從無到有,從有到精,我深深的感到自己的付出沒有成為流水。經(jīng)過這次的程序設計,我的收獲很大,不僅對C+語言有了更進一步的認識和了解,而且通過實踐,我也發(fā)現(xiàn)我的好多不足之處,首先是自己編程粗心大意,經(jīng)常出錯,再有對C+語言的一些標準函數(shù)不太了解,還有對函數(shù)調(diào)用的正確使用不夠熟悉,以及對C+語言中經(jīng)常出現(xiàn)的錯誤也不了解,但是經(jīng)過三周的鍛煉,我在這幾個方面的認識有所提高。同時這次
16、的課程設計也讓我懂得了很多:(1)保持良好的學習心態(tài),第一,要有自信,自強,積極主動學習.第二,克服畏難情緒,樹立學好程序設計的信心(2)要了解概念:C+程序設計本身并不復雜,變量,函數(shù),條件語句,循環(huán)語句等概念較多.要真正能進行程序設計,就要深入理解這些概念.應該重視概念的學習. (3)自己動手編寫程序,親自動手進行程序設計是培養(yǎng)邏輯思維的好方法.因此我們得多動手編寫程序,逐漸提高寫程序的能力.自己動手,編寫一些程序,才會有成就感,進而對課程產(chǎn)生興趣,做起來才比較從容.等你在編寫大量程序之后(4)上機調(diào)試程序應注意多問問同學,多問問老師、,把不懂的地方標出來。(5)養(yǎng)成良好的編程習慣,第一,
17、程序構思要有說明;第二,學會如何調(diào)試程序; 第三,對運行結果要做正確與否的分析。但是,如果以前上課的時候不認真的聽講的話,做這個程序設計就會有點點困難,所以,同時也在提醒我們,學習,任何時候都要認真!對于計算機專業(yè)的大學生來說,積累實戰(zhàn)經(jīng)驗是一項極其重要的內(nèi)容,很可能成為將來就業(yè)的敲門磚。而程序設計綜合課程設計就是積累實戰(zhàn)經(jīng)驗的一個過程,雖然程序的規(guī)模并不大,但能夠讓我們盡早地認識軟件開發(fā)的重要性和必要性,為將來的就業(yè)打下堅實的基礎??傊诖舜蔚腃+程序設計中,沒有付出就沒有收獲,努力地同時要耐得住寂寞。所以此次C+程序設計,讓我做事情更加有耐心,更加細心,學習更加認真仔細。故在此,特意感謝
18、給予我?guī)椭耐瑢W和老師,謝謝你們。附錄1:參考文獻1譚浩強編著:C+程序設計,北京:清華大學出版社,2004年6月第一版2譚浩強編著:C+程序設計教程,北京:清華大學出版社,2007年7月附錄2:程序清單以下是記憶力小游戲的源代碼:#include <iostream>#include <string>#include <vector>#include <algorithm>#include <ctime>#include <cstdlib>using namespace std;char ch200="你好啊&
19、quot;,ch1400="計算機程序不好做啊", ch2400="大家畢業(yè)之后是考研還是出國呢", ch3600="我們不知道誰在不經(jīng)意間說了再見之后就真的再也不見了" /玩家必須猜出來的字符串static int setup=1; /難度static int point=10;static int t=100;void set_game_content();void begin_game();void set_game_setup();void game_select();void delay(int t) ;void end_g
20、ame();void clear_viewprot();string random_string(string s);int main() srand(time(0);game_select();void set_game_content()clear_viewprot(); /清除屏幕 cout<<"請輸入你要設置的測試內(nèi)容:"<<endl;getchar();cin.getline (ch,400); game_select();void begin_game()string ran_str1;string input_str;string ra
21、n_str2;string s; int i=0; int num=1; /關數(shù)string str; begin: clear_viewprot(); /清除屏幕 ran_str1="" input_str="" ran_str2="" s=""cout<<" 現(xiàn)在是第"<<num <<"關哦!"<<endl; cout<<"請你把下面的字記住"<<endl<<endl;
22、 if(setup=1) str=ch;else if(setup=3) str=ch1;else if(setup=5) str=ch2;else if(setup=7) str=ch3;ran_str1=random_string(str); /打亂玩家要猜的字符串cout<<ran_str1<<endl<<endl;cout<<"大概幾秒后,上面的字自動消失!"delay(t);for( i=0; i < 2 ; i+ )clear_viewprot(); /清楚屏幕cout<<"下面是已經(jīng)打
23、亂的字:"<<endl<<endl;ran_str2=random_string(str);cout<<ran_str2<<endl<<endl;cout<<"請輸入上面的字: "cin>>input_str;while (input_str!=ran_str2) /當玩家輸入的字符不等于打亂的字符,繼續(xù)輸入 clear_viewprot(); /清楚屏幕 cout<<"輸入錯誤,請重新輸入"<<endl; cout<<&qu
24、ot;下面是已經(jīng)打亂的字:"<<endl<<endl; ran_str2=random_string(str); cout<<ran_str2<<endl<<endl; cin>>input_str; /while 語句結束 /for 語句結束 clear_viewprot(); /清除屏幕cout<<"請輸入在第一次看到的字:"<<endl<<endl;cin>>input_str;if(input_str=ran_str1)clear_vie
25、wprot(); /清楚屏幕cout<<endl<<endl<<"輸入成功,繼續(xù)努力!"<<endl;cout<<"你現(xiàn)在的分數(shù)是"<<point<<endl<<endl;point=point*2+strlen(ch);cout<<"要繼續(xù)游戲嗎? 1->繼續(xù)游戲(難度加大) , 2->退出游戲"<<endl; cin>>s;if(s0='2') end_game(); el
26、se num+; /關數(shù)setup=setup+1; /游戲的難度if(t>40) t=t-5; /游戲的難度 goto begin;elsecout<<"*你輸了,還想挑戰(zhàn)嗎*"<<endl;if(point>0) point=point-10; cout<<"你現(xiàn)在的分數(shù)是"<<point<<endl<<endl;cout<<"要繼續(xù)游戲嗎?(難度變小) 1->繼續(xù)游戲, 2->退出游戲"<<endl;if(t&
27、lt;150) t=t+5; if(setup>0) setup-; cin>>s;if(s0='2') end_game(); else clear_viewprot(); /清除屏幕cout<<" 現(xiàn)在是第"<<num <<"關,fighting!"<<endl; goto begin;void set_game_setup() clear_viewprot(); /清除屏幕 cout<<"請輸入游戲的難度: 1->easy, 2->m
28、edium , 3->hard ,4->crazy"<<endl<<endl;cin>>setup;if(setup=1) setup=1; t=100;else if(setup=2) setup=3; t=90;else if(setup=3)setup=5;t=80;else if(setup=4)setup=7;t=80;else if (setup<=0)setup= 1;t=100;else if(setup>4)setup= 7;t=80; game_select();void game_select()clear_viewprot(); /清除屏幕string menu_str="" cout<<"1->開始游戲, 2->玩家自己設置測試內(nèi)容, 3->挑選游戲難度, 4->退出游戲"<<endl<<endl; cin>>menu_str; switch ( menu_str0 )case '1': begin_game(); break;case '2':set_ga
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 供應商與酒店供貨合同范本
- 合同范例客戶分類標準
- 農(nóng)業(yè)產(chǎn)業(yè)園運營合同范本
- 醫(yī)保取錢合同范本
- 別墅訂單轉(zhuǎn)讓合同范本
- 出版保密合同范本
- 保溫大棚采購合同范本
- 勞務管理合同范本
- 農(nóng)業(yè)機械銷售合同范本
- 廈門中介合同范本
- 2輸變電工程施工質(zhì)量驗收統(tǒng)一表式(變電工程土建專業(yè))-2024年版
- QCT457-2023救護車技術規(guī)范
- 排球正面雙手墊球教案教學設計
- 【23精品】蘇少小學美術三下教案全冊
- 房屋租賃(出租)家私清單
- 計算機技術碩士專業(yè)學位授權點申報研究演示課件(PPT 39頁)
- 剪紙藝術-認識剪紙
- 駕駛員違規(guī)違章學習記錄表
- 簡易瞬態(tài)工況法1
- 中國鐵路總公司環(huán)境保護管理辦法(鐵總計統(tǒng)〔2015〕260號)
- 技術分析介紹教程課件
評論
0/150
提交評論