美文网首页大虾带着小虾米
郑州轻工业大学oj题解(c语言)-1004: 三位数的数位分离

郑州轻工业大学oj题解(c语言)-1004: 三位数的数位分离

作者: 象骑士Hack | 来源:发表于2019-11-24 10:27 被阅读0次
    1004题.png
    题目要求个位、十位、百味的数字,有不少同学能求出个位、百位的数字,但不知道怎么求十位的数字。假设a是两位,我们可以知道a/10就可以得到十位上的数,所以问题可以转换为怎么求出十位个位组成的两位数,将原来的数-百位上的数*100就可以得到这个两位数。
    代码为:
    #include <stdio.h>
    
    int main()
    {
        int x;
        int g, s, b, two;
        scanf("%d", &x);
        b = x / 100;
        g = x % 10;
        
        // 求出最后的两位数
        two = x - b * 100;
        s = two / 10;
        printf("%d %d %d", g, s, b);
    }
    

    如果对%运算比较了解,我们可以想到求任意数的最后两位数,可以用%100来实现,可以用另种思路来实现。

    #include <stdio.h>
    
    int main()
    {
        int x;
        int g, s, b,;
        scanf("%d", &x);
        b = x / 100;
        g = x % 10;
        s = x % 100 / 10;
        printf("%d %d %d", g, s, b);
    }
    

    这个题目是求水仙花数、转化为二进制的基础,建议大家好好看看。也有人一些喜欢用 x / 10 % 10来就出倒数第二位的数字。1027题是这个题目的加强版,这题做出来了,又学过if语句的同学,可以看看1027题如何做。

    相关文章

      网友评论

        本文标题:郑州轻工业大学oj题解(c语言)-1004: 三位数的数位分离

        本文链接:https://www.haomeiwen.com/subject/qcxlwctx.html