【澳门风云】用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; // 程序正常结束
}
相关推荐
Figo_Cheung10 分钟前
Figo基于RNC理论的宇宙演化第七纪元猜想
开发语言·php
泡海椒1 小时前
JQuick-Curl 二次开发:自定义解析器、扩展点开发指南,如何把框架能力真正变成团队资产
java·开发语言·okhttp·maven
wind100321 小时前
DLSS5 开启保姆级教程:RTX20/30/40 显卡通用 鸣潮 / 异环 / 绝区零全适配
游戏·电脑·英伟达·dlss·鸣潮
WWJA王文举2 小时前
FreeRTOS事件组和任务通知详解:为什么任务通知比队列更轻量?
开发语言·php
wuyk5553 小时前
12.归并排序:分治思想的稳定排序算法
开发语言·数据结构·算法·排序算法
吴声子夜歌3 小时前
ApacheCommons——commons-text(模板替换与文本算法)
java·开发语言·算法·apache
quantdash_cc4 小时前
量化数据源怎么选:稳定性、实时性和数据完整性到底该如何权衡?
开发语言·python·数据分析·量化交易·股票数据·quantdash
萧瑟余晖4 小时前
Java深入解析篇五十四之对象模型详解
java·开发语言
张文是假的啊4 小时前
Java | record | Controller逻辑
java·开发语言
不甘先生4 小时前
Go 中 type、方法与指针接收者:从 str_name.Name() 看懂 Go 的类型系统
开发语言·后端·golang