【澳门风云】用C开发一个模拟一个简单的扑克牌比大小的游戏

效果:

欢迎来到此游戏

电脑的牌已发好,接下来给你发牌

你的牌是:5 请选择是否开牌

选1开牌,选2不开

1(用户输入)

电脑的牌是:10

玩家胜利!

源码:

cpp 复制代码
#include<iostream> // 引入C++标准输入输出库
#include<cstdlib>  // 引入C标准库,用于rand()和srand()
#include<ctime>    // 引入C时间库,用于time()
using namespace std; // 使用标准命名空间,以简化标准库中的名称

int computerCard, playerCard; // 定义全局变量来存储电脑和玩家的牌

// 发牌函数
void dealCards() {
    srand(time(NULL)); // 只需要在程序开始时设置一次随机数种子
    computerCard = rand() % 13 + 1; // 生成1到13的随机数(模拟扑克牌的点数)
    playerCard = rand() % 13 + 1;   // 同样为玩家生成一张牌
}

// 显示牌并比较大小
void displayCardsAndCompare() {
    cout << "你的牌是:" << playerCard << " 请选择是否开牌" << endl;
    cout << "选1开牌,选2不开" << endl;
    int userInput;
    cin >> userInput; // 读取用户输入

    // 根据用户输入进行判断
    if (userInput == 1) {
        cout << "电脑的牌是:" << computerCard << endl;
        if (playerCard < computerCard) {
            cout << "电脑胜利!" << endl;
        } else if (playerCard > computerCard) {
            cout << "玩家胜利!" << endl;
        } else {
            cout << "平局!" << endl;
        }
    } else if (userInput == 2) {
        cout << "你选择了不开牌,游戏结束。" << endl;
    } else {
        cout << "无效的输入,请输入1或2。" << endl;
    }
}

int main() {
    cout << "欢迎来到此游戏\n" << endl;
    dealCards(); // 发牌
    cout << "电脑的牌已发好,接下来给你发牌" << endl; // 这里实际上已经发了,但为了游戏流程这样说
    displayCardsAndCompare(); // 显示牌并比较
    return 0; // 程序正常结束
}
相关推荐
组合缺一12 小时前
SolonCode CLI 为什么选择 Java 技术栈?
java·开发语言
熊猫钓鱼>_>12 小时前
GenUI:从“文本对话”到“可操作界面”的范式转移
开发语言·人工智能·agent·sdk·vibecoding·assistant·genui
Ulyanov12 小时前
《玩转QT Designer Studio:从设计到实战》 QT Designer Studio环境搭建与核心工作区详解
开发语言·python·qt·系统仿真·雷达电子战系统仿真
枕星而眠12 小时前
C 语言结构体硬核总结:内存对齐、#pragma pack、位段、柔性数组(面试+工程双指南)
c语言·后端·面试·柔性数组
前端摸鱼匠12 小时前
【AI大模型春招面试题22】层归一化(Layer Norm)与批归一化(Batch Norm)的区别?为何大模型更倾向于使用Layer Norm?
开发语言·人工智能·面试·求职招聘·batch
历程里程碑12 小时前
MySQL视图:虚拟表的实战技巧
java·开发语言·数据库·c++·sql·mysql·adb
lsx20240612 小时前
Go 语言循环语句
开发语言
wanhengidc12 小时前
云主机的核心原理与架构
运维·服务器·科技·游戏·智能手机·架构
逻辑驱动的ken12 小时前
Java高频面试考点场景题10
java·开发语言·深度学习·求职招聘·春招
曾几何时`12 小时前
QT——对象树
开发语言·qt