• 1018. 锤子剪刀布 (20)


    原题: https://www.patest.cn/contests/pat-b-practise/1018

    实现思路: 剪刀石头布胜负只有6种情况, 加上平局3种情况, 一共9中情况,
    分别判断即可.

    完整实现:

    #include <stdio.h>
    
    void printWinGesture (int b, int c, int j);
    void judge (char a, char b);
    
    int ac = 0;  // 甲用C胜的次数
    int aj = 0;  // 甲用J胜的次数
    int ab = 0;  // 甲用B胜的次数
    int bc = 0;  // 乙用C胜的次数
    int bj = 0;  // 乙用J胜的次数
    int bb = 0;  // 乙用B胜的次数
    int ave = 0; // 平局次数
    
    int main () {
        char a;
        char b;
        int awin = 0; // 甲胜的总次数
        int alose = 0; // 甲负的总次数
        int n;
        int i;
    
        scanf("%d", &n);
        getchar();
        for (i=1; i<=n; i++) {
            scanf("%c %c", &a, &b);
            getchar();
            judge(a, b);
        }
        awin = ac + aj + ab;
        alose = n - awin - ave;
        printf("%d %d %d
    ", awin, ave, alose);
        printf("%d %d %d
    ", alose, ave, awin);
    
        printWinGesture(ab, ac, aj);
        printf(" ");
        printWinGesture(bb, bc, bj);
        printf("
    ");
    
        return 0;
    }
    
    // 打印三个数中最大的数表示的字母
    void printWinGesture (int b, int c, int j) {
        int max = b;
        if (c > b && c >= j) {
            printf("C");
        } else if (j > b && j > c) {
            printf("J");
        } else {
            printf("B");
        }
    }
    
    // 记录平局的次数, 以及甲乙分别用CBJ胜的次数
    void judge (char a, char b) {
        if (a == b) {
            ave++;
        } else if (a == 'C' && b == 'J') {
            ac++;
        } else if (a == 'J' && b =='B') {
            aj++;
        } else if (a == 'B' && b == 'C') {
            ab++;
        } else if (a == 'C' && b == 'B') {
            bb++;
        } else if (a == 'J' && b == 'C') {
            bc++;
        } else if (a == 'B' && b == 'J') {
            bj++;
        }
    }
    
    
  • 相关阅读:
    上台阶
    格子游戏
    找同乡
    约德尔测试
    hihocoder_week195奖券兑换
    hihocoder_week197逆序单词
    牛客网--数串
    hihocoder_offer收割编程练习赛55_3
    hihocoder_offer收割编程练习赛55_2
    hihocoder_offer收割编程练习赛55_1
  • 原文地址:https://www.cnblogs.com/asheng2016/p/7711417.html
Copyright © 2020-2023  润新知