现有两人玩猜拳游戏,如果游戏规定比赛连续进行3次,赢2次及以上者获胜,如何改写程序?

现有两人玩猜拳游戏,每人可用拳头表示3种物体(石头、剪刀、布)中的一种,两人同时出拳,游戏胜负规则如下 比赛连续进行3次,赢2次及以上者获胜,如何改写程序

img

#include <iostream>
#include <ctime>
using namespace std;

int main() {
    srand((unsigned)time(NULL)); // 用于生成随机数

    int player1Score = 0; // 玩家1得分
    int player2Score = 0; // 玩家2得分

    // 进行三局游戏
    for (int round = 1; round <= 3; round++) {
        int player1Choice, player2Choice;

        // 玩家1输入选择
        cout << "第 " << round << " 局,玩家1请输入你的选择(1=石头,2=剪刀,3=布):";
        cin >> player1Choice;

        // 玩家2输入选择
        cout << "玩家2请输入你的选择(1=石头,2=剪刀,3=布):";
        cin >> player2Choice;

        // 输出选择
        cout << "玩家1出了:";
        switch (player1Choice) {
            case 1: cout << "石头" << endl; break;
            case 2: cout << "剪刀" << endl; break;
            case 3: cout << "布" << endl; break;
            default: cout << "无效的选择" << endl; continue;
        }
        cout << "玩家2出了:";
        switch (player2Choice) {
            case 1: cout << "石头" << endl; break;
            case 2: cout << "剪刀" << endl; break;
            case 3: cout << "布" << endl; break;
            default: cout << "无效的选择" << endl; continue;
        }

        // 判断胜负
        if (player1Choice == player2Choice) {
            cout << "本局平局" << endl;
        } else if (player1Choice == 1 && player2Choice == 2 ||
                   player1Choice == 2 && player2Choice == 3 ||
                   player1Choice == 3 && player2Choice == 1) {
            cout << "玩家1赢了本局" << endl;
            player1Score++;
        } else {
            cout << "玩家2赢了本局" << endl;
            player2Score++;
        }
    }

    // 输出最终结果
    if (player1Score > player2Score) {
        cout << "玩家1赢了比赛" << endl;
    } else if (player1Score < player2Score) {
        cout << "玩家2赢了比赛" << endl;
    } else {
        cout << "比赛结束,平局" << endl;
    }

    return 0;
}

封装一下,变成函数,return胜利者
然后写个for循环执行3次,再套while循环,必须比到分出胜负
搞两个变量记录胜利次数