请帮我写一个C语言代码:乒乓球游戏,要求有注释,精简易懂
时间: 2024-10-21 18:12:05 浏览: 27
当然可以,下面是一个非常简单的C语言代码示例,创建了一个模拟乒乓球比赛的游戏。这个程序仅包含基本的功能,包括两个玩家轮流击球,直到有一个玩家得分超过特定分数。
```c
#include <stdio.h>
#include <stdlib.h>
// 定义常量和变量
#define MAX_SCORE 10
int player1_score = 0;
int player2_score = 0;
int turn = 1; // 初始轮到1号球员
// 函数声明
void play_round();
void change_player();
int main() {
char response;
printf("欢迎来到乒乓球游戏!\n");
do {
play_round();
printf("\n当前比分:player1 %d vs player2 %d\n", player1_score, player2_score);
printf("你想继续吗?(y/n): ");
scanf(" %c", &response);
// 清除多余空格并转换成小写
response = tolower(response);
// 检查用户输入
while (response != 'y' && response != 'n') {
printf("无效输入,请选择'y'或'n': ");
scanf(" %c", &response);
}
} while (response == 'y');
return 0;
}
// 玩家击球函数
void play_round() {
if (turn == 1) { // 当前是1号玩家
printf("Player 1击球...\n");
// 这里只是一个占位符,实际游戏中应增加随机判断或用户输入等逻辑
if (rand() % 2 == 0) { // 比如这里假设1号玩家得分为偶数
player1_score++;
}
turn = 2;
} else { // 当前是2号玩家
printf("Player 2击球...\n");
// 同理,这里仅做演示,换成2号玩家得分
if (rand() % 2 == 1) {
player2_score++;
}
turn = 1;
}
change_player(); // 轮换玩家
}
// 轮换玩家
void change_player() {
if (turn == 1) {
printf("现在轮到Player 2了.\n");
} else {
printf("现在轮到Player 1了.\n");
}
}
```
阅读全文