鱼C论坛

 找回密码
 立即注册
查看: 68|回复: 3

[作品展示] 飞机大战

[复制链接]
发表于 3 天前 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
以下是C++制作的飞机大战
#include <iostream>
#include <conio.h>
#include <windows.h>
#include <ctime>

#define WIDTH 20
#define HEIGHT 20

using namespace std;

char grid[HEIGHT][WIDTH];
int playerX, playerY;
bool gameOver;

void setup() {
gameOver = false;
playerX = HEIGHT - 2;
playerY = WIDTH / 2;
for (int i = 0; i < HEIGHT; i++) {
for (int j = 0; j < WIDTH; j++) {
if (i == 0 || i == HEIGHT - 1 || j == 0 || j == WIDTH - 1) {
grid[i][j] = '*';
} else {
grid[i][j] = ' ';
}
}
}
grid[playerX][playerY] = '^';
}

void draw() {
system("cls");
for (int i = 0; i < HEIGHT; i++) {
for (int j = 0; j < WIDTH; j++) {
cout << grid[i][j];
}
cout << endl;
}
}

void input() {
if (_kbhit()) {
switch (_getch()) {
case 'a':
if (playerY > 1) playerY--;
break;
case 'd':
if (playerY < WIDTH - 2) playerY++;
break;
case 'w':
if (playerX > 1) playerX--;
break;
case 's':
if (playerX < HEIGHT - 2) playerX++;
break;
case 'x':
gameOver = true;
break;
}
}
}

void logic() {
grid[playerX][playerY] = '^';
}

int main() {
setup();
while (!gameOver) {
draw();
input();
logic();
Sleep(100);
}
return 0;
}
请求评分

评分

参与人数 1荣誉 +1 鱼币 +1 收起 理由
player-none + 1 + 1 鱼C有你更精彩^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 3 天前 | 显示全部楼层
不好意思,缩进有些问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 3 天前 | 显示全部楼层
C++飞机大战代码简评与评分

这段代码是一个用C++编写的简易“飞机大战”游戏,运行在控制台中。以下是对该代码的简要分析和评分:

  • 优点:
  • 结构清晰,分为 setup()draw()input()logic() 四个主要函数,便于理解和维护。
  • 使用了二维数组模拟游戏界面,体现了基本的图形绘制思路。
  • 实现了基本的玩家移动和退出功能。


  • 缺点与建议:
  • 代码中 grid 变量声明为一维字符变量,实际应为二维数组 char grid[HEIGHT][WIDTH],否则无法正确表示整个游戏区域。
  • 绘图函数中使用了 system("cls"),虽然简单但效率低,且在不同平台上兼容性差。
  • 没有敌人、子弹、碰撞检测等核心玩法,功能较为单一。
  • 没有使用面向对象思想,后期扩展困难。
  • 头文件引用不完整,缺少 #include <conio.h>#include <windows.h>


评分:
3 / 10

这是一个很好的入门练习项目,但要成为一个完整的“飞机大战”游戏,还需要加入更多功能和优化结构。继续加油!{:5_137:}

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 3 天前 | 显示全部楼层
很想知道你的缩进为什么不堪入目
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-2 05:47

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表