日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

c语言推箱子给上颜色,本人的C语言大作业——推箱子

發(fā)布時間:2024/10/8 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言推箱子给上颜色,本人的C语言大作业——推箱子 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

該樓層疑似違規(guī)已被系統(tǒng)折疊?隱藏此樓查看此樓

#include

#include

#include

#include

#include

#include

#include

#include?

#include

#include?

#define??MAX???3????????/*游戲的總關數(shù)*/

#define??STEPMAX???3????/*悔棋的最大步數(shù)*/

#define?Key_R?0x1372

#define?Key_Up??0x4800

#define?Key_Enter?0x1c0d

#define?Key_Down??0x5000

#define?Key_P?????0x1970

#define?Key_Esc???0x11b

#define?Key_Right??0x4d00

#define?Key_Left??0x4b00

#define??BKCOLOR???GREEN?/*設置背景顏色*/

#define??STARTX???40?????/*畫游戲界面時,二維數(shù)組中ghose[0][0]左上角頂點在VGA模式下的橫坐標*/

#define??STARTY???80?????/*畫游戲界面時,二維數(shù)組中ghose[0][0]左上角頂點在VGA模式下的縱坐標*/

int?ghose[10][10];???????/*用來表示游戲中各種狀態(tài)的二維數(shù)組*/

int?BOXNUM;??????????????/*每關中箱子的個數(shù)*/

int?MISSIONNUM;??????????/*玩家正在玩的關數(shù)*/

int?Key;?????????????????/*從鍵盤讀取按鍵值*/

int?STEPNUM;?????????????/*人走的步數(shù)*/

int?DIRECTIONKEY;????????/*用來記錄玩家所按的方向鍵*/

int?BOXMOVE[STEPMAX];????/*記錄人行走時箱子移動了沒有.如有,BOXMOVE[i]=1,否則BOXMOVE[i]=0*/

int?STEP[STEPMAX];???????????/*記錄人行走的方向*/

typedef??struct??CURRENT

{?int?x;

int?y;

}PLAYER;

PLAYER??p;???????????????/*p.x和p.y分別表示人當前所在的橫縱坐標*/

typedef??struct?ADD

{?int?x;

int?y;

}ADD;????????????????????/*人行走或悔棋時,用來表示人下一步移動需要增加的橫縱坐標值*/

typedef?struct?STAR

{?int?x;

int??y;

int??c;

}?STAR;

STAR??s[300];????????????/*畫星星閃動的畫面,x,y分別表示每顆星星所在的位置,c表示星星的顏色*/

DRAWSTAR1()??????????????/*畫星星*/

{int??i,j,m,n,dotx,doty,color,maxcolor;

m=getmaxx();

n=getmaxy();

maxcolor=getmaxcolor();

for(i=0;i<300;i++)

{?s[i].x=random(m+1);

s[i].y=random(n+1);

s[i].c=random(maxcolor);

putpixel(s[i].x,s[i].y,s[i].c);}}

DRAWSTAR()????????????/*讓星星的坐標不變,顏色變換*/

{int??i,j,m,n,dotx,doty,color,maxcolor;

m=getmaxx();

n=getmaxy();

maxcolor=getmaxcolor();

for(i=0;i<300;i++)

{?s[i].x=random(m+1);

s[i].y=random(n+1);

s[i].c=random(maxcolor);

putpixel(s[i].x,s[i].y,s[i].c);

}

do{?for(i=0;i<20000;i++)

delay(2);

for(j=0;j<300;j++)

{

s[j].c=random(maxcolor);

putpixel(s[j].x,s[j].y,s[j].c);}

}while(!bioskey(1));

}

GOOD()????????????????/*畫火球滾動的畫面*/

{void?*?ptr;

float?i;

setactivepage(1);

setcolor(RED);

setfillstyle(1,14);

fillellipse(10,10,10,10);

ptr=malloc(imagesize(0,0,20,20));

getimage(0,0,20,20,ptr);

randomize();

setactivepage(0);

DRAWSTAR1();

for(i=0;i<6.28*4;i=i+0.005)

{putimage(300+8*(cos(i)+i*sin(i)),240+6*(sin(i)-i*cos(i)),ptr,COPY_PUT);

putimage(300+8*(cos(i)+(i)*sin(i)),240+6*(sin(i)-(i)*cos(i)),ptr,COPY_PUT);

if(kbhit())?break;

delay(10);

}

}

void?GAME()?????/*游戲過程的控制*/

{?int?i,j,flag;

ADD??a;

MISSIONNUM=0;

NEXTMISSION();

do?{?flag=0;

Key=bioskey(0);

switch(Key)

{?case??Key_Enter:{NEXTMISSION();break;}

case??Key_Up:{a.x=-1;a.y=0;flag=1;DIRECTIONKEY=Key;break;}

case??Key_Down:{a.x=1;a.y=0;flag=1;DIRECTIONKEY=Key;break;}

總結

以上是生活随笔為你收集整理的c语言推箱子给上颜色,本人的C语言大作业——推箱子的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。