请教高手C程序设计

来源:百度知道 编辑:UC知道 时间:2024/06/30 05:56:34
1.给出一个不多于5位的正整数要求(1)求出它是几位数;(2)分别打印出每个数;(3)按逆序打印出各位数字。
2.输入四个整数,要求按大小顺序输出

#include <stdio.h>

static int get_digits(int value)
{
int i = 0;
while(value > 0)
{
value /= 10;
i++;
}

return i;
}

static void print_number_by_reverse(int number)
{
while(number > 0)
{
printf("%d ", number%10);
number /= 10;
}

return;
}

static void print_number_in_order(int number, int digits)
{
int j = 0;
int factor = 1;
int result = 1;
for(; digits > 0; digits--)
{
for(j = 1; j < digits; j++)
{
factor *= 10;
}
result = number/factor;
printf("%d ", result);
number -= factor * result;
factor = 1;
}

return;
}

static void print_number(int number)
{
if(number > 10000)
{
printf("The number is lager than 10000\n");
return;
}