以下是使用C语言编写的石头剪刀布游戏的代码示例:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main() {
    int playerChoice, computerChoice;
    
    // 设置随机数种子
    srand(time(0));
    
    // 提示玩家输入选择
    printf("请选择:\n");
    printf("1. 石头\n");
    printf("2. 剪刀\n");
    printf("3. 布\n");
    scanf("%d", &playerChoice);
    
    // 生成计算机随机选择
    computerChoice = rand() % 3 + 1;
    
    // 输出玩家和计算机的选择
    printf("玩家选择了: ");
    switch(playerChoice) {
        case 1:
            printf("石头\n");
            break;
        case 2:
            printf("剪刀\n");
            break;
        case 3:
            printf("布\n");
            break;
        default:
            printf("无效选择\n");
            return 0;
    }
    
    printf("计算机选择了: ");
    switch(computerChoice) {
        case 1:
            printf("石头\n");
            break;
        case 2:
            printf("剪刀\n");
            break;
        case 3:
            printf("布\n");
            break;
    }
    
    // 判断胜者
    if(playerChoice == computerChoice) {
        printf("平局!\n");
    } else if((playerChoice == 1 && computerChoice == 2) || 
              (playerChoice == 2 && computerChoice == 3) || 
              (playerChoice == 3 && computerChoice == 1)) {
        printf("玩家获胜!\n");
    } else {
        printf("计算机获胜!\n");
    }
    
    return 0;
}

这段代码首先提示玩家输入选择,然后计算机随机生成选择。然后,它会输出玩家和计算机的选择,并根据规则判断胜者。如果选择相同,则为平局,否则根据石头剪刀布的规则判断获胜者。

代码解释:

  1. 头文件: stdio.h 用于标准输入输出,stdlib.h 用于随机数生成,time.h 用于获取时间。
  2. 变量声明: playerChoice 用于存储玩家的选择,computerChoice 用于存储计算机的选择。
  3. 随机数种子: srand(time(0)) 使用当前时间作为随机数种子的基础,确保每次运行程序都会产生不同的随机数序列。
  4. 玩家选择: 代码提示玩家输入选择,并使用 scanf 读取玩家输入。
  5. 计算机选择: computerChoice = rand() % 3 + 1 生成1到3之间的随机数,代表石头、剪刀和布。
  6. 输出选择: 使用 switch 语句根据选择的数字输出相应的文字。
  7. 判断胜者: 使用 if 语句判断玩家和计算机的选择,并根据石头剪刀布的规则输出胜者。

如何运行代码:

  1. 将代码保存为 .c 文件,例如 rock_paper_scissors.c
  2. 使用 C 编译器编译代码,例如 gcc rock_paper_scissors.c -o rock_paper_scissors
  3. 运行生成的执行文件,例如 ./rock_paper_scissors

希望这个教程对您有所帮助!如果您有任何问题,请随时提问。

C语言石头剪刀布游戏代码 - 完整教程和示例

原文地址: http://www.cveoy.top/t/topic/bcim 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录