求数字的位数且顺序逆序输出数字

求数字的位数且顺序逆序输出数字

得到个位丢弃个位是解决一些数字问题重要的方法
例如求数字12345的位数并且逆序顺序输出各个数字
代码如下

#include<stdio.h>
#include<math.h>
int Digit(int n)      //数字的位数
{
 int count = 0;
 do
 {
  count++;
  n /= 10;
 }while(n != 0);
 return count;
}
void PrintRevrse(int n)  //逆序输出数字
{
 do
 {
  printf("%d ",n%10);
  n /= 10;
 }while(n != 0);
 printf("\n");
}
void PrintOrder(int n)   //顺序输出数字
{
 int len = Digit(n);   //引用上面函数 数字的位数
 int power = pow(10.0,len-1);
 for(int i=0;i<len;i++)
 {
  printf("%d ",n/power);
  n %= power;
  power /= 10;
 }
 printf("\n");
}
int main()
{
 printf("%d\n",Digit(12345)); //数字的位数
 PrintRevrse(12345);    //逆序输出数字   
 PrintOrder(12345);     //顺序输出数字
 return 0;
}

运行结果

猜你喜欢

转载自blog.csdn.net/qq_43579888/article/details/88727442