版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 計(jì)算機(jī)技術(shù)基礎(chǔ)課程設(shè)計(jì)</p><p><b> C語言</b></p><p><b> 設(shè)計(jì)報(bào)告</b></p><p> 題目: 路邊吃數(shù)游戲</p><p> 學(xué)院: 機(jī)電工程學(xué)院</p><p><b> 專業(yè): 工業(yè)工程
2、</b></p><p><b> 班級(jí): </b></p><p> 一、題目:路邊吃數(shù)游戲</p><p><b> 二、選題背景</b></p><p> 當(dāng)今人們工作繁忙很少有時(shí)間玩大型游戲,這些C語言小程序可以使人們?cè)诓栌囡埡蟮钠虝r(shí)間里輕松一下,自己可以設(shè)置難度,初玩
3、很不錯(cuò)的!</p><p><b> 三、設(shè)計(jì)思想</b></p><p> 利用二維數(shù)組、for循環(huán)、if…else語句來實(shí)現(xiàn)通道和墻壁的制作。</p><p> switch語句用來編制方向鍵及相關(guān)設(shè)置。</p><p> 兩個(gè)調(diào)用函數(shù)分別是:wingame(),lostgame()。</p>
4、<p> window( ) /* 設(shè)置窗口大小*/</p><p> gotoxy( ) /* 設(shè)置圖像的位置*/</p><p> sound\unsound( ) /* 設(shè)置用來設(shè)置聲音*/</p><p> textcolor( ) /* 設(shè)置圖像的顏色*/</p><p> textbackg
5、round( ) /*設(shè)置畫面的背景顏色*/</p><p> cprintf( ) /* 輸出圖像*/</p><p> getch ( ) /*輸入字符*/</p><p><b> 四、程序流程圖:</b></p><p><b> 五、程序清單:</b></
6、p><p> #define UP 0x4800</p><p> #define DOWN 0x5000</p><p> #define LEFT 0x4b00</p><p> #define RIGHT 0x4d00</p><p> #include <conio.h></p>
7、<p> #include <time.h></p><p> #include <stdlib.h></p><p> int k[17][24]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,</p><p> 0,1,0,0,0,0,0,0,0,0,0,0,0,7,
8、0,0,0,0,0,0,0,0,0,0,</p><p> 0,1,1,1,1,1,1,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,0,0,</p><p> 0,1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,</p><p> 0,3,1,1,1,1,0,1,1,1,4,1,0,1,0,1,1,1
9、,1,1,1,1,0,0,</p><p> 0,1,0,0,1,0,1,0,0,0,0,1,0,1,1,1,0,0,0,0,0,0,0,0,</p><p> 0,2,1,1,1,1,6,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,</p><p> 0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,1,1,1,1,
10、1,1,0,</p><p> 0,1,1,1,1,1,1,1,1,1,1,5,1,1,1,0,1,0,0,1,0,0,0,0,</p><p> 0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,4,0,0,1,0,0,0,0,</p><p> 0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,1,1,1,1,0,1,1,0,&
11、lt;/p><p> 0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,0,</p><p> 0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,</p><p> 0,0,1,1,1,1,0,0,0,0,0,0,0,1,1,1,3,1,1,1,1,1,0,0,</p&g
12、t;<p> 0,2,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,</p><p> 0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,</p><p> 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,};</p>&
13、lt;p> int en(int *b,int n)</p><p><b> {int i;</b></p><p> for(i=0;i<20;i++)</p><p> if(b[i]==n)return 0;</p><p><b> return 1;</b><
14、/p><p><b> }</b></p><p> fu(int *b)</p><p><b> {int i;</b></p><p> for(i=0;i<20;i++)</p><p><b> b[i]=0;</b></p&
15、gt;<p><b> }</b></p><p> void lostgame(int num)</p><p><b> {</b></p><p> textcolor(WHITE);</p><p> gotoxy(11,22);</p><p&g
16、t; cprintf("The sum of the Numbers you have eaten is: %d.",num);</p><p> gotoxy(11,23);</p><p> cprintf("Sorry, you have lost the game!Press any key to restart...");</p
17、><p><b> getch();</b></p><p> gotoxy(11,22);</p><p> cprintf(" ");</p><p> gotoxy(11,23);</p
18、><p> cprintf(" ");</p><p><b> }</b></p><p> void wingame()</p><p><b> {</b>&
19、lt;/p><p> textcolor(WHITE);</p><p> gotoxy(11,22);</p><p> cprintf("Yeah! Congratulations! You have won the game!");</p><p> gotoxy(11,23);</p><p
20、> cprintf("Press any key to quit...");</p><p><b> getch();</b></p><p> window(1,1,25,80);</p><p> textbackground(BLACK);</p><p> textcolor
21、(LIGHTGRAY);</p><p><b> clrscr();</b></p><p><b> exit(0);</b></p><p><b> }</b></p><p><b> main()</b></p><
22、p><b> {</b></p><p> int i,j,key,num,b[20],p;</p><p><b> char ch;</b></p><p><b> aa: </b></p><p> window(1,1,25,80);</p>
23、;<p> textbackground(LIGHTGREEN);</p><p> textcolor(YELLOW);</p><p><b> clrscr();</b></p><p><b> fu(b);</b></p><p><b> num=0;&
24、lt;/b></p><p><b> p=0;</b></p><p> textcolor(LIGHTRED);</p><p> gotoxy(18,1);</p><p> cprintf("%c(UP) %c(DOWN) %c(LEFT) %c(RIGHT)",24,25,27
25、,26);</p><p> gotoxy(16,2);</p><p> cprintf("Eat the numbers in your road whose sum is 7,");</p><p> gotoxy(14,3);</p><p> cprintf("and eat 7 in the
26、end, then you will win the game!");</p><p> textcolor(MAGENTA);</p><p> for(i=4;i<21;i++)</p><p> for(j=20;j<44;j++)</p><p> if(k[i-4][j-20]==0)</p>
27、;<p><b> {</b></p><p> gotoxy(j,i);</p><p> cprintf("%c",219);</p><p><b> }</b></p><p> else if(k[i-4][j-20]!=1)</p>
28、<p><b> {</b></p><p> gotoxy(j,i);</p><p> cprintf("%d",k[i-4][j-20]);</p><p><b> }</b></p><p> textcolor(YELLOW);</p&g
29、t;<p><b> i=5;</b></p><p><b> j=21;</b></p><p> gotoxy(j,i);</p><p> cprintf("\1");</p><p> gotoxy(33,5);</p><p
30、> cprintf("7");</p><p> gotoxy(7,7);</p><p> cprintf("num:%d",num);</p><p> textcolor(WHITE);</p><p> gotoxy(11,22);</p><p> c
31、printf("Press any key to start game, Q key to quit...");</p><p> ch=getch();</p><p> if(ch=='Q'||ch=='q')</p><p><b> {</b></p><p&
32、gt; window(1,1,25,80);</p><p> textbackground(BLACK);</p><p> textcolor(LIGHTGRAY);</p><p><b> clrscr();</b></p><p><b> exit(0);</b></p&
33、gt;<p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> textcolor(YELLOW);</p><p> gotoxy(11,22);</p><p
34、> cprintf(" ");</p><p><b> }</b></p><p><b> do</b></p><p><b> {</b></p><p
35、> key=bioskey(0);</p><p> sound(200);</p><p> delay(1000);</p><p> nosound();</p><p> switch(key)</p><p><b> {</b></p><p>
36、; case DOWN:</p><p><b> {</b></p><p> if(k[i-4+1][j-20]==0)</p><p><b> continue;</b></p><p> if(k[i-4+1][j-20]!=1&&k[i-4+1][j-20]!=
37、7&&en(b,i+j+1))</p><p><b> {</b></p><p> num+=k[i-4+1][j-20];</p><p> b[p++]=i+j+1;</p><p> gotoxy(7,7);</p><p> cprintf("num
38、:%d",num);</p><p><b> }</b></p><p> textcolor(YELLOW);</p><p> gotoxy(j,i++);</p><p> printf(" ");</p><p> gotoxy(j,i);<
39、/p><p> cprintf("\1");</p><p> gotoxy(33,5);</p><p> if(k[i-4][j-20]==7&&num==7)</p><p> wingame();</p><p> else if(num!=7&&k[i
40、-4][j-20]==7)</p><p><b> {</b></p><p> lostgame(num);</p><p><b> goto aa;</b></p><p><b> }</b></p><p><b> br
41、eak; </b></p><p><b> }</b></p><p><b> case UP:</b></p><p><b> {</b></p><p> if(k[i-4-1][j-20]==0)</p><p><
42、b> continue;</b></p><p> if(k[i-4-1][j-20]!=1&&k[i-4-1][j-20]!=7&&en(b,i+j-1))</p><p><b> {</b></p><p> num+=k[i-4-1][j-20];</p><
43、p> b[p++]=i+j-1;</p><p> gotoxy(7,7);</p><p> cprintf("num:%d",num);</p><p><b> }</b></p><p> textcolor(YELLOW);</p><p> got
44、oxy(j,i--);</p><p> printf(" ");</p><p> gotoxy(j,i);</p><p> cprintf("\1");</p><p> gotoxy(33,5);</p><p> if(k[i-4][j-20]==7&
45、&num==7)</p><p> wingame();</p><p> else if(num!=7&&k[i-4][j-20]==7)</p><p><b> {</b></p><p> lostgame(num);</p><p><b>
46、goto aa;</b></p><p><b> }</b></p><p><b> break; </b></p><p><b> }</b></p><p> case LEFT:</p><p><b> {&
47、lt;/b></p><p> if(k[i-4][j-20-1]==0)</p><p><b> continue;</b></p><p> if(k[i-4][j-20-1]!=1&&k[i-4][j-20-1]!=7&&en(b,i+j-1))</p><p><
48、;b> {</b></p><p> num+=k[i-4][j-20-1];</p><p> b[p++]=i+j-1;</p><p> gotoxy(7,7);</p><p> cprintf("num:%d",num);</p><p><b>
49、}</b></p><p> textcolor(YELLOW);</p><p> gotoxy(j--,i);</p><p> printf(" ");</p><p> gotoxy(j,i);</p><p> cprintf("\1");<
50、/p><p> gotoxy(33,5);</p><p> if(k[i-4][j-20]==7&&num==7)</p><p> wingame();</p><p> else if(num!=7&&k[i-4][j-20]==7)</p><p><b> {&
51、lt;/b></p><p> lostgame(num);</p><p><b> goto aa;</b></p><p><b> }</b></p><p><b> break; </b></p><p><b>
52、}</b></p><p> case RIGHT:</p><p><b> {</b></p><p> if(k[i-4][j-20+1]==0)</p><p><b> continue;</b></p><p> if(k[i-4][j-20
53、+1]!=1&&k[i-4][j-20+1]!=7&&en(b,i+j+1))</p><p><b> {</b></p><p> num+=k[i-4][j-20+1];</p><p> b[p++]=i+j+1;</p><p> gotoxy(7,7);</p&g
54、t;<p> cprintf("num:%d",num);</p><p><b> }</b></p><p> textcolor(YELLOW);</p><p> gotoxy(j++,i);</p><p> printf(" ");</p&
55、gt;<p> gotoxy(j,i);</p><p> cprintf("\1");gotoxy(33,5);</p><p> if(k[i-4][j-20]==7&&num==7)</p><p> wingame();</p><p> else if(num!=7&
56、;&k[i-4][j-20]==7)</p><p><b> {</b></p><p> lostgame(num);</p><p><b> goto aa;</b></p><p><b> }</b></p><p><
57、b> break; </b></p><p><b> }</b></p><p><b> default:</b></p><p><b> continue;</b></p><p><b> }</b></p>
58、;<p> }while(1);</p><p><b> }</b></p><p><b> 六、程序設(shè)計(jì)說明</b></p><p> 其場(chǎng)景可以人為的更改,運(yùn)用了函數(shù)調(diào)用及for循環(huán)知識(shí),達(dá)到了鞏固和提高C語言運(yùn)用能力的目的。</p><p> 但只程序中用到的函數(shù)較
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 計(jì)算機(jī)技術(shù)基礎(chǔ)課程設(shè)計(jì)
- 計(jì)算機(jī)技術(shù)基礎(chǔ)課程設(shè)計(jì)---解救人質(zhì)游戲
- 計(jì)算機(jī)技術(shù)基礎(chǔ)課程設(shè)計(jì)---黑白棋
- 計(jì)算機(jī)技術(shù)基礎(chǔ)(c語言)課程設(shè)計(jì)--尋寶游戲
- 計(jì)算機(jī)技術(shù)基礎(chǔ)課程設(shè)計(jì)---簡(jiǎn)單的加減乘除運(yùn)算
- 計(jì)算機(jī)文化基礎(chǔ)課程設(shè)計(jì)
- 計(jì)算機(jī)應(yīng)用基礎(chǔ)課程設(shè)計(jì)
- 計(jì)算機(jī)科學(xué)基礎(chǔ)課程設(shè)計(jì)
- 計(jì)算機(jī)科學(xué)基礎(chǔ)課程設(shè)計(jì)
- 計(jì)算機(jī)技術(shù)基礎(chǔ)(c語言)課程設(shè)計(jì)---簡(jiǎn)單的彈球得分游戲
- 計(jì)算機(jī)技術(shù)基礎(chǔ)(c語言)課程設(shè)計(jì)--計(jì)算器
- 計(jì)算機(jī)技術(shù)基礎(chǔ)(c語言)課程設(shè)計(jì)--簡(jiǎn)單潛艇大戰(zhàn)
- 計(jì)算機(jī)技術(shù)基礎(chǔ)(c語言)課程設(shè)計(jì)--模擬銀行打印
- 計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)課程設(shè)計(jì)報(bào)告
- 計(jì)算機(jī)軟件技術(shù)基礎(chǔ)課程設(shè)計(jì)報(bào)告-計(jì)算器課程設(shè)計(jì)
- 計(jì)算機(jī)技術(shù)創(chuàng)新基礎(chǔ)課程設(shè)計(jì)--基于c++的學(xué)生成績(jī)管理系統(tǒng)
- 《計(jì)算機(jī)網(wǎng)絡(luò)基礎(chǔ)課程設(shè)計(jì)》udp
- 計(jì)算機(jī)基礎(chǔ)課程設(shè)計(jì)--計(jì)算機(jī)網(wǎng)頁制作實(shí)驗(yàn)報(bào)告
- 計(jì)算機(jī)應(yīng)用基礎(chǔ)課程設(shè)計(jì)--時(shí)鐘程序設(shè)計(jì)
- 計(jì)算機(jī)應(yīng)用基礎(chǔ)課程
評(píng)論
0/150
提交評(píng)論