c語言推箱子代碼_第1頁
c語言推箱子代碼_第2頁
c語言推箱子代碼_第3頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、#include<stdio.h>#include<stdlib.h>voidmap1();voidmap2();voidmap3();voidshow();voidmove();voidmain(intargc,char*argv)time_ta,b;time(&a);system("color1E");loop1:system("cls");/刷屏printf("nnnnnntttt歡迎進入推箱子游戲nntttt請按abc選擇游戲'nntttt按d鍵結束");intt=getch();if(

2、t='d')printf("nttt");elseif(t='a')map1();gotoloop1;if(t='b')map2();gotoloop1;if(t='c')map3();gotoloop1;elseprintf("nntttt請重新輸入:");gotoloop1;time(&b);printf("nnnntttt游戲總共用時%.3d秒nttt”,b-a);getch();/等待讀取回車符以結束程序voidmap1()time_tp,q,o;time(&

3、;p);inti=4,j=4,m=6,n=2,t=1,k=3;system("cls");/刷屏system("color2E");intx=1,y=7;charz,a99=/*為背景設置初始資料*/'#','#','#','#','#','#','#','#','#','#','#','#',3,0,0,0,1,'#','#',&#

4、39;#',0,0,0,'#',0,'#','#','#',0,0,'#',0,0,5,0,'#','#',0,5,5,3,0,0,0,'#','#','#',0,'#',0,0,'#','#','#','#','#',3,0,0,0,'#','#','#','#',&#

5、39;#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#'show(a);/調用輸出函數(shù)loop:/語句標號move(a,&x,&y,i,j,m,n,t,k,&z);if(aij='!'&&amn=&

6、#39;!'&&atk='!')system("cls");/刷屏show(a);printf("ttttYOUAREWIN!n");time(&q);printf("ttttt用時%.3d秒n",q-p);printf("tttt*回車重新選擇*ntttt");getch();elsetime(&o);if(z='d')return;if(o-p>30)(loopl:system("cls");/刷屏printf(&

7、quot;tttt時間已過請重新回車選關!");intg=getch();if(g=13)/判斷是否為回車符(return;else(gotoloop1;system("cls");/刷屏show(a);/調用輸出函數(shù)gotoloop;voidmap2()(time_tp,q,o;time(&p);inti=2,j=1,m=1,n=3,t=4,k=6;system("cls");/刷屏system("color2E");intx=4,y=1;charz,b99=(/*為背景設置初始資料*/'#',&#

8、39;#','#','#','#','#','#','#','#','#','#','#',3,0,'#','#','#','#','#',3,'#',0,0,0,0,'#','#','#',0,5,0,'#','#',0,0,'#',&#

9、39;#',1,0,5,0,0,3,0,'#','#',0,0,0,0,0,0,'#','#','#','#','#',0,0,5,'#','#','#','#','#','#','#',0,0,'#','#','#','#','#','#','#',&#

10、39;#','#','#','#','#'show(b);/調用輸出函數(shù)loop:/語句標號move(b,&x,&y,i,j,m,n,t,k,&z);if(bij='!'&&bmn='!'&&btk='!')(system("cls");/show(b);printf("tttttime(&q);printf("tttttprintf("tttt*getch();

11、else(time(&o);if(z='d')(return;if(o-p>30)(loop1:system("cls");/printf("ttttintg=getch();if(g=13)/(刷屏YOUAREWIN!n”);用時%.3d秒n",q-p);回車重新選擇*ntttt")刷屏時間已過請重新回車選關!");判斷是否為回車符return;else(gotoloop1;system("cls");/刷屏show(b);/調用輸出函數(shù)gotoloop;voidmap3()(tim

12、e_tp,q,o;time(&p);inti=2,j=1,m=6,n=2,t=7,k=6;system("cls");/刷屏system("color2E");intx=3,y=6;charz,c99=(/*為背景設置初始資料*/'#','#','#','#','#','#','#','#','#','#','#','#','#','

13、#',0,0,0,'#','#',3,'#',0,0,0,0,0,'#','#',0,5,0,5,'#',1,'#','#','#',0,0,0,0,0,5,0,'#','#','#',0,0,0,0,0,0,'#','#','#',3,0,'#',0,'#',0,'#','#',

14、9;#','#',0,0,0,3,'#','#','#','#','#','#','#','#','#','#','#'show(c);/調用輸出函數(shù)loop:/語句標號move(c,&x,&y,i,j,m,n,t,k,&z);if(cij='!'&&cmn='!'&&ctk='!')syste

15、m("cls");/show(c);printf("tttttime(&q);printf("tttttprintf("tttt*getch();刷屏YOUAREWIN!n");用時%.3d秒n",q-p);回車重新選擇*ntttt");else(time(&o);if(z='d')(return;if(o-p>30)loopl:(刷屏時間已過請重新回車選關!");system("cls");/printf("ttttintg=getch

16、();if(g=13)/判斷是否為回車符(return;else(gotoloop1;system("cls");/刷屏show(c);/調用輸出函數(shù)gotoloop;voidshow(charb99)printf("tttt*n");printf("tttt推箱子游戲");printf("ntttt*n");箱子:目的地:口nttttprintf("tttt人:墻:ntttt按d鍵退出游戲ntttt限時30秒!");printf("ntttt*n");inti;intk;f

17、or(i=0;i<9;i+)/使用循環(huán)將地圖轉換輸出(printf("tttt");for(k=0;k<9;k+)(if(bik='#')(printf("");else(if(bik=3)(printf("口");else(if(bik=5)(printf("”);else(if(bik=1)(printf("");else(if(bik=0)(printf("");else(if(bik='!')(printf("O"

18、);elseprintf("%c”,bik);printf("n");printf("tttt*n");voidmove(charc99,int*x,int*y,intX,intY,intA,intB,intN,intM,char*t)(*t=getch();/用getch()得到上下左右鍵,要調用二次getch(),上鍵72,下鍵80,左鍵75,右鍵77.if(*t='d')(/遇到d返回if(*t=75)/左鍵(if(c*x*y-1='#'|c*x*y-1=5&&c*x*y-2=5l|c*x*

19、y-1=5&&c*x*y-2='!')/遇到墻或推兩個箱子elseif(c*x*y-1='!')/把箱子推出目的地if(c*x*y-2!=0)elsec*x*y=0;*y-=1;c*x*y=1;c*x*y-1=5;else(if(c*x*y-1=5&&c*x*y-2!='#')/(if(c*x*y=c兇Y|c*x*y=cAB|c*x*y=cNM)/(c*x*y=3;*y-=1;c*x*y=1;c*x*y-1=5;else(c*x*y=0;*y-=1;c*x*y=1;c*x*y-1=5;else(if(c*x*y-1

20、=5&&c*x*y-2='#')(/else推箱子推著箱子離開目的地推不動箱子(if(c*x*y-1=cXY|c*x*y-1=cAB|c*x*y-1=cNM)/進到目的地(c*x*y=0;*y-=1;c*x*y=1;else(if(c*x*y=cXY|c*x*y=cAB|c*x*y=cNM)/(c*x*y=3;*y-=1;c*x*y=1;else/走到空地離開目的地(c*x*y=0;*y-=1;c*x*y=1;if(cXY=5|cAB=5|cNM=5)/箱子推到目的地(c*x*y-1='!'if(*t=77)/右鍵(if(c*x*y+1='

21、;#'|c*x*y+1=5&&c*x*y+2=5|c*x*y+1=5&&c*x*y+2='!')/遇到墻或推兩個箱子elseif(c*x*y+1='!')/把箱子推出目的地if(c*x*y+2!=0)elsec*x*y=0;*y+=1;c*x*y=1;c*x*y+1=5;elseif(c*x*y+1=5&&c*x*y+2!='#')/推箱子if(c*x*y=c兇Y|c*x*y=cAB|c*x*y=cNM)/推著箱子離開目的地c*x*y=3;*y+=1;c*x*y=1;c*x*y+1=5;el

22、se(c*x*y=0;*y+=1;c*x*y=1;c*x*y+1=5;else(if(c*x*y+1=5&&c*x*y+2='#')/推不動箱子elseif(c*x*y+1=c兇Y|c*x*y+1=cAB|c*x*y+1=cNM)/進到目的地c*x*y=0;*y+=1;c*x*y=1;elseif(c*x*y=cXY|c*x*y=cAB|c*x*y=cNM)/離開目的地c*x*y=3;*y+=1;c*x*y=1;else/走到空地c*x*y=0;*y+=1;c*x*y=1;if(cXY=5|cAB=5|cNM=5)/箱子推到目的地c*x*y+1='!&#

23、39;if(*t=72)/上鍵(if(c*x-1*y='#'|c*x-1*y=5&&c*x-2*y=5l|c*x-1*y=5&&c*x-2*y='!')/遇到墻或推兩個箱子elseif(c*x-1*y='!')/把箱子推出目的地if(c*x-2*y!=0)elsec*x*y=0;*x-=1;c*x*y=1;c*x-1*y=5;elseif(c*x-1*y=5&&c*x-2*y!='#')/if(c*x*y=c兇Y|c*x*y=cAB|c*x*y=cNM)/c*x*y=3;*x-=1;c*x*y=1;c*x-1*y=5;elsec*x*y=0;*x-=1;c*x*y=1;c*x-1*y=5;elseif(c*x-1*y=5&&c*x-2*y='#')/推箱子推著箱子離開目的地推不動箱子else(if(c*x-1*y=cXY|c*x-1*y=cAB|c*x-1*y=cNM)/進到目的地(c*x*y=0;*x-=1;c*x*y=1;else(if(c*x*y=cXY|c*x*y=cAB|c*x*y=cNM)

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論