
这次我决定试试用思维导图的方式将C语言控制台版坦克大战的逻辑及流程写下了。
** 实现逻辑**
1.在此项目中需要什么函数?
2.它们之间有什么联系,怎样联系?
3.这些函数及联系又该怎样实现?
根据需要实现的逻辑才有了上面的两张思维导图。
第一张思维导图是坦克大战的流程图,也就算坦克大战这个程序是如何运行的。
第二张思维导图是坦克大战需要的函数及它们之间的联系。
1.坦克
2.子弹
3.障碍物
更加细节的划分在思维导图中。
制作地图
可能制作地图有些朋友不太清楚,那我就抛砖引玉了。
1.需要一个能在地图上打印障碍物的函数首先要有获取标准输出设备句柄,有了句柄才能在指定位置打印字符
//制作地图所需的函数
void Writechar(short x, short y, const char*pStr, WORD color)
{
COORD pos = { x * 2, y };
HANDLE hOutStd = GetStdHandle(STD_OUTPUT_HANDLE); //获取标准输出设备句柄
SetConsoleCursorPosition(hOutStd, pos); //设置当前光标位置
SetConsoleTextAttribute(hOutStd, color); // 设置输出文本的颜色
printf("%s", pStr); //此时打印,就能在指定位置打印字符
}
2.需要鼠标事件处理函数利用一个switch函数来判断按下的是鼠标的哪一个键。

本文通过思维导图方式详细阐述了C语言控制台版坦克大战的实现逻辑,包括流程图、所需函数及其相互关系。主要内容涉及坦克、子弹、障碍物的处理,地图制作与编辑,以及鼠标和键盘事件的处理。提供了一个初步的认知框架,并分享了资源下载链接以供参考。
最低0.47元/天 解锁文章
293





