c语言 给一个整数,要求 1.求它是几位数 2.分别输出每一位数字 3.按逆序输出各位数字
程序员文章站
2022-03-22 08:07:35
...
c语言 给一个整数,要求 1.求它是几位数 2.分别输出每一位数字 3.按逆序输出各位数字
#include<stdio.h>
#include<math.h>
//求几位数
int Count (long long n)
{
if(n==0)
return 1;//如果是0,则要返回1
int tmp = 0;
while(n!= 0)
{
n = n/ 10;
tmp++;
}
return tmp;
}
//逆序输出
void PrintReverse(long long n)
{
if(n < 0)
{
printf("-");
n = -n;
}//判断是不是正数,如果是负数取正
do{
printf("%d",n%10);//得到个位
n/=10;//丢弃个位
}while(n!= 0);
printf("\n");
}//得到高位丢弃高位
//正序输出
void PrintOrder(long long n)
{
if(n < 0)
{
printf("-");
n = -n;
}
if(n == 0)
{
printf(“0\n”);
return ;//退出本函数
}
int tmp = Count(n);//位数
int power = (int)pow(10.0,tmp-1);
while(n != 0)
{
printf("%d “,n/power);
n %= power;
power /= 10;
}
printf(”\n");
}
int main()
{
printf("%d\n",Count(33223));
PrintOrder(143);
PrintReverse(143);
return 0;
}