输出一个数是几位数,并将各个位数的数按顺序、逆序输出

//给一个五位数,要求输出它的位数
//并且输出每一位数字(顺序逆序都输出)
#include <stdio.h>
#include <math.h>
//求一个数是几位数的函数
//方法:丢弃个位数法(丢弃个位数用 /=10)
int Count(long long number)
{
int tmp=0;
if(number == 0)
{
return 1;
}
while(number != 0)
{
tmp++;
number /= 10;
}
return tmp;
}
//逆序输出的函数
//方法:得个位数法(得到个位数用 %=10)
void PrintReverse(long long number)
{
int tmp;
if(number == 0)
{
printf(“0\n”);
}
while(number != 0 )
{
tmp=number % 10;
number /= 10;
printf("%d “,tmp);
}
printf(”\n");
}
//顺序输出函数
//方法:结合Count函数留最高位,然后再去最高位(对该数取余)
void PrintOrder(long long number)
{
if(number == 0)
{
printf(“0\n”);
}
int tmp;
while(number != 0)
{
int power = pow(10.0,Count(number) - 1);
tmp=number / power;//得到最高位数字
number %= power;//去掉最高位之后的数
printf("%d “,tmp);
}
printf(”\n");
}
int main()
{
printf("%d\n",Count(123456789));
PrintReverse(123456789);
PrintOrder(987654321);
return 0;
}

猜你喜欢

转载自blog.csdn.net/csdn_edition/article/details/102490801
今日推荐