C语言怎么自己做小游戏,分享自己做的一个小游戏

#include "stdio.h"

#include "stdlib.h"

#include "conio.h"

#include "time.h"

int main()

{

srand(time(NULL));

int i , j ;

int x , y ;

int x1[400]={0};

int y1[400]={0};

int num=0;

int scord=0, maxs=0;

int hm=0;

int xun1=0,xun=0;

char zl;

int sl=0,gameover=0;

x1[num]=rand()%28+1; num++;

x=rand()%28+1; y=13;

printf("\33[?25l");

//主循环

while(10){

//循环一 生成界面

while(1){

for(j=0;j<15;j++){

for(i=0;i<30;i++){

int D=0;

for(int k=0;k

if(i==x1[k]&&j==y1[k])

{D=1;break;}

}

if(i==0||i==29||j==0||j==14)

printf("\33[44;34m■\33[0m");

else if(j==7&&i==9){

printf("\33[42;31m【守卫底线】");

i=20;

}

else if(j==8&&i==9){

printf("\33[42;31m【开始游戏】");

i=20;

}

else if(j==9&&i==9){

printf("\33[42;31m【退出游戏】");

i=20;

}

else

printf("\33[42;m \33[0m");

}

printf("\n");

}

switch(getch()){

case'5':xun1=1;break;

case'9':{xun1=1;xun=1;}break;

}

system("clear");

printf("\33[2J");

if(xun1==1)

break;

}//循环一 生成界面

if(xun==0){

//循环二 游戏界面

while(2){

for(j=0;j<15;j++){

for(i=0;i<30;i++){

int d=0;

for(int k=0;k

if(i==x1[k]&&j==y1[k])

{d=1;break;}

}

if(i==0||i==29||j==0||j==14)

printf("\33[44;34m■\33[0m");

else if(i==x&&j==y)

printf("\33[42;31m®\33[0m");

else if(d==1)

printf("\33[42;31mo\33[0m");

else

printf("\33[42;m \33[0m");

}

printf("\n");

}

printf("当前得分:%d\n",scord);

printf("最高得分:%d\n",maxs);

hm++;

if(hm==50){

hm=0;

for(int k=0;k

y1[k]++;

}

if(kbhit())

zl=getch();

system("clear");

switch(zl){

case'2':{

if(y<2);

else

y--;

zl=0;}break;

case'8':{

if(y>12);

else

y++;

zl=0;}break;

case'4':{

if(x<2);

else

x--;

zl=0;}break;

case'6':{

if(x>27);

else

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值