[C语言][PTA][2019Fall] 7-22 用天平找小球 (10 point(s))

By | October 25, 2019

声明

这是 拼题A(PTA)《中M2019秋C入门和进阶练习集》的习题。原题在 https://pintia.cn/problem-sets/1163286449659043840/problems/1174288506294865970 (侵删)
本人的答案仅供交流学习,请勿用于当作答案来提交!

题目描述

7-22 用天平找小球 (10 point(s))
三个球A、B、C,大小形状相同且其中有一个球与其他球重量不同。要求找出这个不一样的球。

输入格式:
输入在一行中给出3个正整数,顺序对应球A、B、C的重量。

输出格式:
在一行中输出唯一的那个不一样的球。

输入样例:
1 1 2
输出样例:
C

我的答案

/*================================================================
*   Copyright (C) 2019 Navin Xu. All rights reserved.
*   
*   Filename    :7-22-天平找小球.c
*   Author      :Navin Xu
*   E-Mail      :admin@navinxu.com
*   Create Date :2019年10月25日
*   Description :
================================================================*/
#include <stdio.h>

size_t diff_index(int []);

int main() {
    int weights[3];
    scanf("%d %d %d", weights, &weights[1], &weights[2]);
    char balls[3] = {'A', 'B', 'C'};
    printf("%c", balls[diff_index(weights)]);
    return 0;
}

size_t diff_index(int weights[]) {
    size_t index = 0;
    if (weights[0] == weights[2])
        index = 1;
    else if (weights[0] == weights[1])
        index = 2;

    return index;
}

鉴于本人的相关知识储备以及能力有限,本博客的观点和描述如有错漏或是有考虑不周到的地方还请多多包涵,也欢迎指正,一起学习,共同进步。如果本文对您有帮助,而且让您觉得值得为内容付费,那么就请赞助(打赏)一下本人,这不强制。打赏支持微信支付,方法是使劲地戳一下下方的“打赏”按钮,然后得到微信收款的二维码,再用微信支付扫一下,就像买菜那样。祝好!