采用switch语句修改“4.2.2 continue 语句”对应的

采用switch语句修改“4.2.2 continue 语句”对应的
【例4.9】。
要求:将例子中确定本次猜拳输赢的判断语句,用switch语句进行改写。

基于Monster 组和GPT的调写:

#include <iostream>
using namespace std;

int main() {
    int player;
    int computer;

    cout << "石头剪刀布游戏开始!" << endl;
    cout << "请玩家输入选择(石头-1,剪刀-2,布-3):" << endl;
    cin >> player;

    computer = rand() % 3 + 1; // 生成1到3之间的随机数

    cout << "电脑选择了:" << computer << endl;

    switch (player) {
        case 1:
            switch (computer) {
                case 1:
                    cout << "平局" << endl;
                    break;
                case 2:
                    cout << "玩家赢了" << endl;
                    break;
                case 3:
                    cout << "电脑赢了" << endl;
                    break;
            }
            break;

        case 2:
            switch (computer) {
                case 1:
                    cout << "电脑赢了" << endl;
                    break;
                case 2:
                    cout << "平局" << endl;
                    break;
                case 3:
                    cout << "玩家赢了" << endl;
                    break;
            }
            break;

        case 3:
            switch (computer) {
                case 1:
                    cout << "玩家赢了" << endl;
                    break;
                case 2:
                    cout << "电脑赢了" << endl;
                    break;
                case 3:
                    cout << "平局" << endl;
                    break;
            }
            break;

        default:
            cout << "无效的选择" << endl;
            break;
    }

    return 0;
}


  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7512921
  • 除此之外, 这篇博客: C语言例题第三章中的 【例3-9】求解简单表达式。输入一个形式如"操作数 运算符 操作数"的四则运算表达式,输出运算结果,要求使用switch语句编写。 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • # include <stdio.h>
    int main(void)
    {
        double value1, value2;
        char operator1;
    
        printf("Type in an expression: ");    /* 提示输入一个表达式 */
        scanf("%lf%c%lf", &value1, &operator1, &value2);
        switch(operator1){
            case '+':
                printf("=%.2f\n", value1 + value2);
                break;
            case '-':
                printf("=%.2f\n", value1 - value2); 
                break;
            case '*':
                printf("=%.2f\n", value1 * value2); 
                break;
            case '/':
                printf("=%.2f\n", value1 / value2); 
                break;
            default: 
                printf("Unknown operator\n"); 
                break;
        }
    
        return 0;
    }