c语言控制台写游戏,c控制台游戏

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#include

#define leave 3

void taolu()

{

printf("c语言控制台小游戏 陈子昂编写 版本1.06");

printf("\n玩法1234代表着上下左右 可以移动O点 两点重合 即为胜利 ");

printf("\n编个游戏也不容易 界面有些简陋 各位海涵");

printf("\n 在显示完关卡输入的首字母输入? 可看到玩法 输入q 即为退出");

}

int tf(int xx,int yy,int bbx,int bby)

{

if((xx==bbx)|(yy==bby))

{ return(1); }

else

{ return(0); }

}

int xyprint(int x,int y)

{

if (y==0)

{return(0);}

else{ int i; for(i=0;i<80;i++) { printf("1"); }

for(i=1;i

printf("1");

for(i=0;i

int mov(int x,int y,int key)

{ int i;

switch(key) {case 1:y--;i=1;break; case 2:y++;i=1;break; case 3:x--;i=0;break; case 4:x++;i=0;break; default:return(0);} if(i) { return(y); } else { return(x); } }

int xprint(int x,int by,int y)

{

int i;

for(i=0;i

printf("O"); printf("\n\n-----------------------------------------");printf("---------------------------------------");printf("\n");return 0;

}

int leaveby(int z){

switch(z)

{case 1:return(3);break;case 2:return(5);break;case 3:return(1);break;}}

int leaveax(int z)

{switch(z)

{case 1:return(2);break;case 2:return(6);break;case 3:return(1);break;}}

int leavey(int z)

{switch(z){case 1:return(2);break;case 2:return(8);break;case 3:return(9);break;}}

int leavex(int z)

{ switch(z)

{case 1:return(3);break; case 2:return(3);break; case 3:return(6);break; }}

int main(void)

{ int ax; int by;int no;int x;int y;char key[50];taolu();gets(key); int i=leave;

while(i)

{ again:for(x=0;x<10;x++)

{ key[x]=0; } ax=leaveax(i); by=leaveby(i); x=leavex(i); y=leavey(i); system("cls"); no=xyprint(ax,by); no=xprint(x,by,y); gets(key); system("cls"); if(key[0]=='?')

{ taolu();gets(key);goto again; } if(key[0=='q'])

{ return 0; } for(no=0;no<50;no++)

{ switch(key[no])

{ case 48:key[no]=0;break; case 49:key[no]=1;break; case 50:key[no]=2;break; case 51:key[no]=3;break; case 52:key[no]=4;break; case 53:key[no]=0;break; case 54:key[no]=0;break; case 55:key[no]=0;break; case 56:key[no]=0;break; case 57:key[no]=0;break; default:key[no]=0; } printf("%d ",key[no]); } for(no=-1;key[no];);

{ no++; if(key[no]==0)

{ goto end; } else{switch(key[no]){ case 1:; case 2:y=mov(x,y,key[no]);break; case 3:; case 4:x=mov(x,y,key[no]);break; }printf("\nx:%d y:%d ax:%d by:%d",x,y,ax,by); } } no=tf(x,y,ax,by);if(no!=0) {printf("sure\n\n");gets(key);} else {end:printf("you have to try again or nokey\n\n"); gets(key); goto again; }i--; } return 0;}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值