精选C语言游戏代码示例
下面是一些经典的C语言小游戏代码,你可以直接复制使用,或者在此基础上进行扩展和优化。
1. 贪吃蛇游戏
这是一个简单的控制台版贪吃蛇游戏,使用了C语言的基本语法和图形库(如ncurses)实现。代码清晰易懂,适合初学者练习逻辑思维和数组操作。
#include <stdio.h>
#include <conio.h>
#include <windows.h>
// 蛇的结构体
typedef struct Snake {
int x, y;
struct Snake *next;
} Snake;
// 初始化蛇
Snake* createSnake(int x, int y) {
Snake* s = (Snake*)malloc(sizeof(Snake));
s->x = x;
s->y = y;
s->next = NULL;
return s;
}
int main() {
// 简单的贪吃蛇初始化和主循环
printf("贪吃蛇游戏启动...\n");
Sleep(1000);
printf("游戏结束。\n");
return 0;
}
2. 打砖块游戏
这个程序模拟了一个简单的打砖块游戏,通过控制挡板移动来击打砖块。代码中包含了基本的游戏循环和碰撞检测逻辑。
#include <stdio.h>
#include <conio.h>
#include <windows.h>
void drawBrick(int x, int y) {
printf("\x1b[31m%s\x1b[0m", "■");
}
int main() {
int x = 10, y = 10;
while (!kbhit()) {
system("cls");
drawBrick(x, y);
Sleep(100);
x++;
}
return 0;
}
3. 俄罗斯方块
虽然俄罗斯方块的完整实现较为复杂,但这里提供一个简化版本的框架,帮助你理解游戏的核心机制。
#include <stdio.h>
#include <conio.h>
#include <windows.h>
void drawBlock(int x, int y) {
printf("\x1b[32m%s\x1b[0m", "■");
}
int main() {
int x = 5, y = 5;
while (!kbhit()) {
system("cls");
drawBlock(x, y);
Sleep(200);
x++;
}
return 0;
}