Shoshinsha_1 2022-05-31 19:42 采纳率: 100%
浏览 237
已结题

C语言,三局两胜的石头剪刀布游戏程序。

C语言:剪刀石头布游戏。计算机通过随机数字确定1-3,然后开始游戏。 如果PC赢了,它输出 "I win",程序结束;否则,它输出 "You win",程序结束。
已给出的程序如下,扩展这个例子,与电脑进行三局两胜的石头剪子布游戏。 如果其中一个玩家先赢了三次,则输出 "x比x,我(你)赢了 "并终止程序。
#include"ransu.h"
int game(int a, int b){
if(a == b) return 0;
else if((a==1&&b==2)||(a==2&&b==3)||
(a==3&&b==1)) return 1;
else return 2;
}
int main(){
int a, b, i = 0, j;
srand(time(NULL));
printf(" 1: Rock 2: Paper 3: Scissors \n");
while(i == 0) {
printf("input 1, 2, 3\n");
scanf("%d", &a);
b = 3 * RAND() + 1;
printf("I am %d \n", b);
j = game(a, b);
if(j == 0){
printf(" one more \n");
} else if(j == 1){
printf("I win. \n");
i++;
} else {
printf("You win. \n");
i++;
}
}
}

  • 写回答

1条回答 默认 最新

  • 白驹_过隙 算法领域新星创作者 2022-05-31 19:55
    关注

    img

    #include"stdio.h"
    #include <stdlib.h>
    #include <time.h>
    int game(int a, int b)
    {
        if(a == b)
            return 0;
        else if((a==1&&b==2)||(a==2&&b==3)||
                (a==3&&b==1))
            return 1;
        else
            return 2;
    }
    int main()
    {
        int a, b, i = 0, j,t=0,n1=0,n2=0;
        srand(time(NULL));
        printf(" 1: Rock 2: Paper 3: Scissors \n");
        while(n1!=3 && n2!=3){
            i=0;
           while(i == 0)
            {
                printf("input 1, 2, 3\n");
                scanf("%d", &a);
                b = rand()%3 + 1;
                printf("I am %d \n", b);
                j = game(a, b);
                if(j == 0)
                {
                    printf(" one more \n");
                }
                else if(j == 1)
                {
                    printf("I win. \n");
                    i++;
                    n1++;
                }
                else
                {
                    printf("You win. \n");
                    i++;
                    n2++;
                }
            }
        }
        if(n1==3){
            printf("%d比%d,我赢了",n1,n2);
        }
        else
        printf("%d比%d,你赢了",n1,n2);
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 6月8日
  • 已采纳回答 5月31日
  • 创建了问题 5月31日

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度