这次我决定试试用思维导图的方式将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