注:(有点乱,直接看代码可能更容易一点)这里采用*10和%10和/10来合作进行每位的取值,依次求出最高位,次高位......个位,中间采用乘以10来进位,后续低一位采用/10和%10来求出,加到前面的进位,不断从一位数到两位数...最终的位数。
#include <stdio.h>
#include <stdlib.h>int main()
{
int num;
printf("输入num ");
scanf_s("%d", &num);
int r = 0;
do
{ //给验证值123
r = r * 10 + num % 10;//1、r=0*10+123%10=3; num=123/10=12;
num /= 10; //2、r=3*10+12%10=32; num=12/10=1;
} while (num != 0); //3、r=32*10+1%10=321; num=1/10=0;
printf("r=%d\n", r); //输出r即为321
system("pause");
}