当前位置: 首页 > ops >正文

C语言手搓游戏之经典《推箱子》

第一篇博文,我以代码小白的身份与大家一起探索C语言的奥秘。

在听完B站翁凯的《C语言程序设计》后,脑洞大开,决定手搓一款小游戏。

在查阅各种游戏资料与对自己水平的评估后,我决定制作《推箱子》这款经典游戏。

一、开发工具与环境配置

我们使用的是VScode这款开发工具。VS Code 支持语法高亮、代码自动补全(又称 IntelliSense)、代码重构、查看定义功能,并且内置了命令行工具和 Git 版本控制系统。是一个轻量级功能强大的源代码编辑器。

这里需要安装VScode并且配置C语言环境,小张并不想一一赘述,所以礼貌地附上链接供大家参考:VS Code C语言开发环境配置附图版保姆教程

二、创建项目并添加头文件、写入main函数

如果你成功配置了环境,说明你已经成功了一半。接下来我们只需要引入头文件<stdio.h>

写入main函数并printf(“你好,小张同学!”);

#include <stdio.h>
int main(){printf("你好,小张同学!");
}

 编译运行:

不出意外的话……

当然会报错啦!!!(doge)

这里需要注意,VScode并不支持中文路径

所以只能忍痛将“小张同学”改为“zhangzhang”再次打开操作了

这次大抵是没意外了……

运行成功!

那么恭喜,你的第一个C语言程序已经写好了 。

三、撰写开发日志

一个好的开发者需要养成写日志的习惯。

它不仅可以让你快速回忆起开发时的各种错误与困难,还能合理地为你的开发提供未来规划,时常回看就能完成知识的闭环。

写就完了:

//开发日志
void mylog(){printf("2024/3/36 开始研发\n");
}

这里我们新建名为mylog的函数来撰写日志并方便日后引用

四、正式开始

1、创建二维数组并实现可读性界面

我们的基本思路是:创建二维数组来代替地图,在终端中用printf遍历数组实现游戏界面

我们用“1”代表墙,“0”代表空地,

int map[10][10] = {{1, 1, 1, 1, 1, 1, 1, 1, 1, 1},{1, 2, 0, 0, 0, 0, 0, 0, 0, 1},{1, 0, 0, 0, 3, 0, 0, 0, 0, 1},{1, 0, 0, 3, 0, 0, 0, 0, 0, 1},{1, 0, 3, 0, 0, 0, 0, 0, 0, 1},{1, 0, 0, 0, 0, 0, 0, 4, 0, 1},{1, 0, 0, 0, 0, 0, 0, 0, 0, 1},{1, 0, 0, 0, 0, 4, 0, 4, 0, 1},{1, 0, 0, 0, 0, 0, 0, 0, 0, 1},{1, 1, 1, 1, 1, 1, 1, 1, 1, 1}};int i, j;for (i = 0; i < 10; i++) // 打印游戏地图{for (j = 0; j < 10; j++){printf("%d"
http://www.xdnf.cn/news/11638.html

相关文章:

  • 【面试重点系列】操作系统常见面试重点题(万字图解)
  • httpUnit介绍及使用示例
  • Wavesplit: End-to-End Speech Separation by Speaker Clustering
  • 静态网页设计html css——HTML+CSS+JavaScript魔域私服游戏HTML(1个页面)
  • 2024年最全kali无线渗透之WEP加密模式与破解13_wep加密过程详解,作为网络安全开发程序员
  • matlab 假设检验
  • linux 命令总结
  • Win_XP_SP3系统下成功安装WinccV6.0_SP3a 经验分享
  • VR全景图片如何制作?揭秘VR全景图片制作全流程
  • 快速上手jQuery:样式操作、效果
  • Cortex简介
  • IPX
  • SCCM安装:(1)准备工作
  • 哈希表-数据结构(C语言)
  • Springboot集成OpenOffice实现各类文件转PDF,在线预览
  • KMP算法详解及各种应用
  • code::blocks代码及信息回顾
  • malloc 的实现原理
  • CSDN规则详解(三)
  • 【Kubernetes系列】私有仓库Harbor和Registry的安装使用
  • test ui-03-cypress 入门介绍
  • Tomcat配置的下载和安装教程(10.1.28)
  • MapReduce详细介绍
  • 【新版】软考 - 系统架构设计师(总结笔记)
  • Dialog详解
  • IDS的详细介绍
  • FreeMarker常见操作
  • MVC、MVP、MVVM模式的概念与区别
  • JDBC基础知识
  • 2024年Web前端最全WebService(1)—WebService的相关概念(WSDL、SOAP、SEI、CXF(1),字节跳动已经四面还见了hr