简单的程序小游戏,推箱子代码
C语言

/*推葙子练习*/
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {int arr[10][10] = {};   //记录地图信息int direction = 0;/*方向*/int stepx = 0;/*水平移动方式*/int stepy = 0;/*垂直移动方式*/int posx = 0; /*人员水平位置*/int    posy = 0; /*人员垂直位置*/int row = 0;int col = 0;srand(time(0));//放置人员和葙子arr[rand() % 8 + 1][rand() % 8 + 1] = 1;//箱子的位置(在1-8之间,不允许靠边界)while (1) {posx = rand() % 10;posy = rand() % 10;if (arr[posy][posx] != 1)//人和箱子不重合跳出循环,继续下面的内容;否则继续循环直到{                       //人和箱子分离。break;}}arr[posy][posx] = 2;//人的位置//显示棋盘for (row = 0;row <= 9;row++) {for (col = 0;col <= 9;col++) {if (arr[row][col] == 0) {printf("*");//空位置}else if (arr[row][col] == 1) {printf("X");//箱子}else {printf("O");//人}}printf("\n");}//每次循环获得一个方向,不一定会真正移动while (arr[0][9] != 1) {//获得移动方向printf("请输入移动方向(0代表上,1代表左,2代表下,3代表右)");scanf("%d", &direction);//使用水平,垂直方向各自的移动方式//表示移动方向if (direction == 0) {stepx = 0;stepy = -1;}else if (direction == 1) {stepx = -1;stepy = 0;}else if (direction == 2) {stepx = 0;stepy = 1;}else {stepx = 1;stepy = 0;}//移动人员位置if ((0 <= posx + stepx) && (posx + stepx <= 9) && (0 <= posy + stepy) && (posy + stepy <= 9)) { if (arr[posy + stepy][posx + stepx] == 1) {//移动后的位置是葙子if (0 <= posx + 2 * stepx && posx + 2 * stepx <= 9 && 0 <= posy + 2 * stepy && posy + 2 * stepy <= 9) {//葙子另一边还在地图上arr[posy + 2 * stepy][posx + 2 * stepx] = 1;   //移动葙子(箱子的位置相对于人多两步)arr[posy + stepy][posx + stepx] = 2;    //移动人arr[posy][posx] = 0;  //原位置变成空posx += stepx; //修改人员水平位置posy += stepy; //修改人员垂直位置//显示棋盘for (row = 0;row <= 9;row++) {for (col = 0;col <= 9;col++) {if (arr[row][col] == 0) {printf("*");}else if (arr[row][col] == 1) {printf("X");}else {printf("O");}}printf("\n");}}}else {//移动后的位置是空arr[posy][posx] = 0;//人变成*posx += stepx;posy += stepy;arr[posy][posx] = 2;//*变成人//显示棋盘for (row = 0;row <= 9;row++) {for (col = 0;col <= 9;col++) {if (arr[row][col] == 0) {printf("*");}else if (arr[row][col] == 1) {printf("X");}else {printf("O");}}printf("\n");}}}}printf("你赢了\n");return 0;
}

【C/C++】简单的程序小游戏-推箱子代码相关推荐

  1. python小游戏——推箱子代码开源

    ♥️作者:小刘在这里 ♥️每天分享云计算网络运维课堂笔记,努力不一定有收获,但一定会有收获加油!一起努力,共赴美好人生! ♥️夕阳下,是最美的,绽放,愿所有的美好,再疫情结束后如约而至. 目录 一.效 ...

  2. 用JAVA制作小游戏——推箱子(三)

    本篇博客主要是对推箱子地图编辑器功能的代码讲解. 首先给出这段代码的部分运行截图: 重难点: 地图编辑器主要有三个重难点: 需要有一个绘制地图的界面 能够实现地图绘制的功能 地图绘制完成后需要将地图内 ...

  3. 用JAVA制作小游戏——推箱子(一)

    本篇博客是对推箱子游戏首页代码的展示 效果图: 难点: 在背景图上添加按钮. 由于直接使用add方法,会变成图片一块区域,按钮一块区域,彼此互不重叠,形成的界面效果不太好,因此用了JLayeredPa ...

  4. 用JAVA制作小游戏——推箱子(二)

    本篇博客主要是推箱子游戏界面功能的代码讲解. 首先先给出这段代码的部分运行截图: 重难点: 游戏界面主要有五个重难点: 固定好地图的位置 地图的显示 构建菜单栏 读取地图数据 玩家操作功能实现 地图的 ...

  5. c语言写一个简单的小游戏-推箱子

    在学习C语言之后,写了一个简单的小游戏来锻炼自己的代码以及C语言知识的掌握能力. 推箱子作为手机上最常见的简单游戏,其代码也相对简单,想法也比较简单,下面为其代码和运行图. /************ ...

  6. 一个简单的c 游戏编程语言,编程达人 c语言写一个简单的小游戏-推箱子

    在学习C语言之后,写了一个简单的小游戏来锻炼自己的代码以及C语言知识的掌握能力. 推箱子作为手机上最常见的简单游戏,其代码也相对简单,想法也比较简单,下面为其代码和运行图. /************ ...

  7. Java小游戏-推箱子

    摘要 推箱子是来自于日本的一个古老游戏,目的是在于训练逻辑思维能力,在一个狭小的空间里,要把木箱推到指定的位置,稍不小心箱子就会无法移动或者被通道堵住的情况,所以需要巧妙的利用有限的空间和通道,合理安 ...

  8. 用C语言写一个可以选择关卡添加关卡的小游戏,推箱子

    目录 关于用C语言写一个可以选择关卡的小游戏 代码部分 所有代码 Tui_Xiang_Zi.h Tui_Xiang_Zi.cpp 关卡数据 关卡数据规则 思路和建议 建议 警告 关于用C语言写一个可以 ...

  9. C语言小游戏 ——推箱子

    文章目录 (1)内容描述 (2)功能 (3)设计目的 (4)总体设计 (5)明显缺点 (6)个人总结 7. 实例 实例一 实例二 实例三 实例四 实例五: (1)内容描述 描述:用户进入页面后可以进行 ...

  10. Python游戏开发,Python实现童年小游戏推箱子 附带源码

    开发工具 Python版本: 3.6.4 相关模块: pygame模块: 以及一些Python自带的模块. 环境搭建 安装Python并添加到环境变量,pip安装需要的相关模块即可. 上效果图 原理简 ...

最新文章

  1. Appium如何获取appPackage和appActivity
  2. 架构师之路 — API 经济 — 身份认证系统
  3. SmartWeatherAPI C#版
  4. 界面之间是如何传值的
  5. Oliver的救援pascal程序
  6. java 内存机制(堆和栈),内存地址
  7. mysql 加减乘除取小数点_mysql加减乘除
  8. ArrayList 去重
  9. USB存储、光驱等外设被禁用了,网络共享被禁用了,还要共享文件怎么办?
  10. 计算机xp系统ie8,教你能够完全windows XP下IE8的方法
  11. 网络工程师职场进化手册
  12. 设计过程(概要设计和详细设计)
  13. 关于:什么是土地用途管制?针对村庄用地的各个地类每一个用地的用途管制的规则?针对土地用地调整怎么进行申报?
  14. huobi API使用经验整理
  15. 电脑取消撤销快捷键是什么_都知道“撤消”快捷键是Ctrl Z,那“反撤消”是什么呢?...
  16. 《统计学习方法》——隐马尔可夫模型
  17. 【iOS开发】相册选择图片识别条形码
  18. 易语言linux时间戳转换,生成时间戳(如何正确地生成时间戳)
  19. vb6.0可以编译c语言嘛,编译器的问题? vb6.0 VS visual studio 2012
  20. 游戏存档破解、售卖的危害及解决办法

热门文章

  1. C语言及程序设计基础 课程主页
  2. MATLAB车牌识别原理[大白话]
  3. 数据分析师15-面试全流程
  4. 磁珠 符号_FB是磁珠的符号 | 学步园
  5. 产品经验谈:什么是用户画像?用户画像的一些应用案例
  6. 怎么更改网络选项为家庭计算机,我的现在是公用网络我想更改为家庭网络应该如何更改...
  7. 查看linux主机防火墙列表,linux防火墙状态查看的方法实例
  8. 使用Python求解一元二次方程
  9. 天津大学计算机学院网韩瑞泽,2018天津大学计算机学院考研拟录取名单
  10. (1)前言-JsDroid引流脚本混合式开发技术系列教程By飞云脚本学院