C语言之三位数的逆序数

时间: 2023-08-15 admin 互联网

C语言之三位数的逆序数

C语言之三位数的逆序数

题目: 输入一个三位数,如123,输出结果为其逆序数,321。但是不允许出现这种情况,即输入值为120,输出值为021,正确的输出值应为21
首先来思考一个问题,十进制的数字是如何表示的,这里就以三位数,123,为例。
实际上,每个数位上的数字分别表示了有几个100,几个10以及几个1
那么123/100=1,即123整除100就会得到此三位数中有几个100,而整除得到的数字就是此三位数的百位数,在这里为1
如果将此三位数整除10,则得到此数有几个10,在这里为12;而后进行如此运算:12%10=2,则得到此三位数的十位数,即为2
最后,借助取余运算,即123%10=3,可以得到此三位数的个位数,即为3
以下为相关代码:

#include <stdio.h>
int main()
{
    int num ;
    printf("请输入一个三位数:\n");
    scanf("%d", &num);
    int a = num % 10;
    int b = num / 10 % 10;
    int c = num / 100;
    int sum = a * 100 + b * 10 + c;
    printf("该三位数的逆序数是:%d\n", sum);
    return 0;
}