啊哈c语言中的走迷宫小游戏

 (先插句题外话:希望大家有不懂的地方评论区一起交流,不要私信,这样的话,后面的人不会,看看评论也能懂)

#include <stdio.h>
int main()
{
	int t=10;//生命
	char ch;
	int x=1,y=1;
	char a[50][50]={"##############################",
					"#O         #   ##   # ### ####",
					"# ###### # # #    # # ### ####",
					"# #   ## #   # #### # ###   ##",
					"#   # ##  ###    #  #  ## ####",
					"##### #     # ##### ##    ####",
					"#   # ##### #   #   # # #    #",
					"# # #    ## # #### ## # # ####",
					"# # # ##      ##      # # ####",
					"# # # ####### ## ###### #   ##",
					"# #   ##   # ## ###### ###   #",
					"# ###### # #####  #        # #",
					"#        # #     ##### ### #  ",
					"# ######## ##### # ### ### # #",
					"#     # ## ##### ###       ###",
					"##### # ## #      ######## # #",
					"#     # ## ## ###        #   #",
					"# # ###       ###### ####### #",
					"# #    ### ##      #         #",
					"##############################"
					};
	printf("HP:%d\n",t);
	for(int i=0; i<=20; i++)
	{
		puts(a[i]);
	}
	//开始 
	while( x!=12 || y!=29 )
	{
		ch=getch();
		if ( ch == 'w' )
		{
			if ( a[x-1][y] != '#' )
			{
				a[x][y] = ' ';
				x--;
				a[x][y] = 'O';
			}else
			{
				system("cls");
				printf("你不可以向上移动"); t--; 
				Sleep(1000);
			}
		}
		if ( ch == 'a' )
		{
			if ( a[x][y-1] != '#' )
			{
				a[x][y] = ' ';
				y--;
				a[x][y] = 'O';
			}else
			{
				system("cls");
				printf("你不可以向左移动");t--; 
				Sleep(1000);
			}
		}
		if ( ch == 's' )
		{
			if ( a[x+1][y] != '#' )
			{
				a[x][y] = ' ';
				x++;
				a[x][y] = 'O';
			}else
			{
				system("cls");
				printf("你不可以向下移动"); t--;
				Sleep(1000);
			}
		}
		if ( ch == 'd' )
		{
			if ( a[x][y+1] != '#' )
			{
				a[x][y] = ' ';
				y++;
				a[x][y] = 'O';
			}else
			{
				system("cls");
				printf("你不可以向右移动"); t--;
				Sleep(1000);
			}
		}
		system("cls");
		if ( t==0 )
		{
			printf("挑战失败,再来一次吧!"); 
			break;
		}
		printf("HP:%d\n",t);
		for(int i=0; i<=20; i++)
		{
			puts(a[i]);
		}
	}
	if ( t!=0 )
	printf("恭喜你成功了!"); 
	return 0;
}

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值