1.求出它是几位数
2.分别输出每一位数字
3.按逆序输出各位数字,例如原数为123,应输出321
#include <stdio.h>
int Getnums(int n)
{
int count = 0;
do
{
n /=10;
count++;
}while(n != 0);
return count;
}
void Geteachnum(int n)
{
int p = Getnums(n);
int power = 1;
for(p;p>1;p--)
{
power *= 10;
}
do
{
printf("%d,",n/power);
n %= power;
power /= 10;
}while(n !=0);
printf("\n"); /*下一组数字转换到下一行*/
}
void Getreversenum(int n)
{
do
{
printf("%d,",n%10);
n /= 10;
}while(n != 0);
printf("\n"); /*下一组数字转换到下一行*/
}
int main()
{
printf("该数为%d位数\n",Getnums(1234)); /*测试用例*/
printf("该数为%d位数\n",Getnums(0));
printf("该数为%d位数\n",Getnums(12345));
printf("该数为%d位数\n",Getnums(456789123));
Geteachnum(1234);
Geteachnum(0);
Geteachnum(12345);
Geteachnum(456789123);
Getreversenum(1234);
Getreversenum(0);
Getreversenum(12345);
Getreversenum(456789123);
return 0;
}