1060: 逆序数字
题目描述
输入一个正整数,将其逆序输出,每个数字后有一个空格。
输入
输入一个正整数n,你可以假设n在int范围内
输出
将n按其逆序输出,每个数字后有一个空格,输出占一行。例如,输入12354,输出4 5 3 2 1
样例输入
12354
样例输出
4 5 3 2 1
提示
整数n对10取模可得到个位上的数字,而利用整数商是整数这一特点,整数n除以10的商正好“扔掉”了个位上的数字
//此方法将不用计算变量长度
#include <stdio.h>
int main() {
int x;
scanf("%d", &x); //输入变量
while (x >= 1) { //当变量x大于1时就可以进行取余运算
printf("%d ", x % 10); //对10进行取余来获得最后一位数
x /= 10; //丢弃最后一位
}
return 0;
}
这里while的判断方法就巧妙的运用了取余的性质,如果x是个位数那么这时候再对10进行取余运算,获得的数字会是个大于0的小数。所以只要控制x对10进行取余后大于等于1,就能保证继续进行循环。