//求一个数的位数
int figure(int n)
{
int count=0;//引入一个计数器
if(n==0)//边缘分析
{return 1;}
while( n!=0)
{
n/=10;
count++;
}
return count;
}
//逆序输出n的每一位(存整取余)
#include<stdio.h>
void PrintReverse1(int n)
{
do
{
printf("%d",n%10);//取余数打印
n/=10;//保存整数
} while(n!=0);
printf("\n");
}
int main()
{
PrintReverse1(591);//测试
PrintReverse1(1);
PrintReverse1(0);
return 0;
}
//顺序输出n的每位数字(存余取整)
#include<stdio.h>
void PrintOrder(int n)
{
int t=figure(n);//子函数之间的调用
int power=1;
for(int i=0;i<t-1;i++)
{
power*=10;
}
do
{
printf("%d",n/power);//取整数打印
n=n%power;//保存余数
power/=10;
} while(n!=0);
printf("\n");
}
int main()
{
PrintOrder(123);//测试
PrintOrder(1);
PrintOrder(0);
PrintOrder(14863);
return 0;
}