dotcpp中的一个习题,要求:给出一个不多于5位的整数,求出它是几位数
并分别输出每一位数字 。第二部卡住了。
#include
int main()
{
int x,count;
count = 1;
scanf("%d", &x);
int n = x;
while (x / 10 > 0)
{
x = x / 10;
if (x >= 0)
{
count++;
}
}
printf("%d\n", count);
int number[5]={0};
int i;
for (i=0; i <= 4; i++)
{
number[i] = n % 10;
printf("%d ", number[i]);
}
return 0;
}
在number数组那里一直错误,不知道为什么?
如果用数组的话,那如何解决那?
谢谢!
int number[5]={0};
int i;
for (i=0; i < count; i++)
{
number[i] = n/pow(10,count-i-1);
printf("%d ", number[i]);
n%=pow(10,count-1-i);
}
#include <stdio.h>
int main()
{
int x, count;
count = 1;
scanf("%d", &x);
int n = x;
int i = 0;
int number[5] = {0};
while (x / 10 > 0)
{
number[i++] = x % 10;
x = x / 10;
if (x >= 0)
{
count++;
}
}
number[i++] = x % 10;
printf("%d\n", count);
for (i = count - 1; i >= 0; i--)
{
printf("%d ", number[i]);
}
return 0;
}