知识屋:更实用的电脑技术知识网站
所在位置:首页 > 综合

做游戏,学编程(C语言) 2 最简单的飞机游戏

发表时间:2022-03-25来源:网络

这一次,在前面弹跳小球的基础上,实现一个简单的飞机游戏的雏形,主要包括:飞机显示、控制移动、发射子弹、击中敌机等功能。需要的语法基础知识和弹跳小球一样:printf、scanf、if-else、for、while,不需要后续函数、数组的知识。

第一步,利用scanf输入不同的字符,asdw控制飞机*字符上下左右移动。

#include #include void main() { int i,j; int x = 5; int y = 10; char input; while (1) { system("cls"); // 清屏函数 // 输出小球上面的空行 for(i=0;i system("cls"); // 清屏函数 // 输出小球上面的空行 for(i=0;i int i,j; int x = 5; int y = 10; char input; while (1) { system("cls"); // 清屏函数 // 输出小球上面的空行 for(i=0;i int i,j; int x = 5; int y = 10; char input; int isFire = 0; while (1) { system("cls"); // 清屏函数 if (isFire==0) // 输出飞机上面的空行 { for(i=0;i for (j=0;j int i,j; int x = 5; int y = 10; char input; int isFire = 0; int ny = 5; // 一个靶子,放在第一行,ny列上 int isKilled = 0; while (1) { system("cls"); // 清屏函数 // if (!isKilled) // 输出靶子 { for (j=0;j for(i=0;i input = getch(); // 根据用户的不同输入来移动,不必输入回车 if (input == 'a') y--; // 位置左移 if (input == 'd') y++; // 位置右移 if (input == 'w') x--; // 位置上移 if (input == 's') x++; // 位置下移 if (input == ' ') isFire = 1; } } }

后面的程序逻辑稍微复杂了些,大家可以仔细想下。人肉单步或VC单步,调试下程序,花点时间,应该不难理解。


思考题:如何实习移动的敌机,我们的飞机发射子弹击中他?如何显示得分?敌机撞击我们后,如何判读并提示游戏失败? 和我们教程中讲解的思路一样,step by step,相信大家可以做出更完善的飞机大战游戏。



补充1:void main() 确实不太正规,但在VC6下没有问题,大家可以写的更规范的int main() 的形式。老师比较懒,就不修改了。



补充2:布置的思考题,大家可以尝试实现,并在评论中交流讨论。尽量在每一个教程中不要使用超出教程所需的最少语法知识。


下一个教程:利用函数对飞机游戏进行重构 知乎专栏

收藏

热门推荐

  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜