对于c语言编写简易“推箱子”游戏代码的经验心得

经过一周的C语言学习,作者利用基础语法和老师的指导,成功编写出了一款‘推箱子’游戏。游戏核心是通过7x8的二维数组绘制地图,并用for循环和switch语句实现不同符号的打印。通过读取键盘输入,结合自定义的移动函数处理玩家和箱子的移动。在移动过程中,特别考虑了箱子与玩家的同步移动以及地图状态的更新。游戏结束条件为到达终点的箱子数量或不在终点的箱子个数,同时包含了重载游戏和文本修饰等功能。
摘要由CSDN通过智能技术生成

       经过差不多一星期c语言的学习,结合这几天学习的基础知识,再加上老师的一部分补充。成功编写出了“推箱子”的小游戏,颇有一番成就感。

下面是编写代码的过程:

       首先,需要在界面打印一张地图,采用的是7行8列的二维数组,通过给数组中元素不同的值,可以打印出不同的符号,代表不同的含义。这里选用for循环遍历数组元素,然后用switch函数进行分支输出。

void show(int a[][8],size_t n){
	int i;int j;
	for(i=0;i<n;i++){
		for(j=0;j<8;j++){
			switch(a[i][j]){
				case 0: printf(" ");break;//路
				case 1: printf("#");break;//墙
				case 2: printf("a");break;//箱子
				case 3: printf("O");break;//洞
				case 4: printf("&");break;//老鼠
				case 5: printf("&");break;//老鼠进洞
				case 6: printf("@");break;//箱子放进洞
			 }

		}	
		printf("\n");
	}
}

       在打印出地图后,需要从键盘读取输入,在此基础上,根据键盘输入的不同,可以完成不同的动作。“推箱子”这个游戏重要的就是移动,在老师的讲解下,上下左右移动可以直接整合成一个函数,只需要改变传入函数的参数,就能做到四个方向的移动。自身坐标可以在初始化阶段循环一遍数组找到横纵坐标再

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值