目录
(1)求解有几位数
#include<stdio.h>
unsigned int GetFigures(int n)
{
unsigned int figures = 0;
while(n!=0)
{
n /= 10;
figures++;
}
return figures;
}
int main()
{
printf("%d\n",GetFigures(12345));
printf("%d\n",GetFigures(0));
printf("%d\n",GetFigures(-12345));
return 0;
}

(2)分别输出每一位数字
#include<stdio.h>
#include<math.h>
unsigned int GetFigures(int n)
{
unsigned int figures = 0;
while(n!=0)
{
n /= 10;
figures++;
}
return figures;
}
void PrintOrder(int n)
{
unsigned char figures = GetFigures(n); /* 获取n的位数 */
int power = (int)pow((float)10,(float)figures-1); /* 获取n最高位数字需要除模的数字 */
int temp;
if (0 == figures) /* n为0 */
{
printf("0\n");
}
if (n < 0) /* n小于0先打印“-”再处理数值 */
{
n = -n;
printf("-");
}
while(power != 0)
{
temp = n / power;
n %= power;
power /= 10;
printf("%d",temp);
}
printf("\n");
}
int main()
{
PrintOrder(1234);
return 0;
}

(3)按逆序输出各位数字
#include<stdio.h>
void PrintReverse(int n)
{
int temp;
if (0 == n) /* n为0 */
{
printf("0\n");
}
if (n < 0) /* n小于0先打印“-”再处理数值 */
{
n = -n;
printf("-");
}
while(n != 0)
{
temp = n % 10;
n /= 10;
printf("%d",temp);
}
printf("\n");
}
int main()
{
PrintReverse(1234);
return 0;
}

本文详细介绍了使用C语言处理数字的三种方法:确定数字的位数、逐位输出数字以及逆序输出数字。通过具体代码示例,展示了如何实现这些功能,适合初学者和有经验的开发者参考。

被折叠的 条评论
为什么被折叠?



