虾饺爱下棋 2022-10-21 15:01 采纳率: 100%
浏览 26
已结题

dotcpp中C语言中数字输出

问题遇到的现象和发生背景

dotcpp中的一个习题,要求:给出一个不多于5位的整数,求出它是几位数
并分别输出每一位数字 。第二部卡住了。

用代码块功能插入代码,请勿粘贴截图

#include <stdio.h>
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数组那里一直错误,不知道为什么?
如果用数组的话,那如何解决那?
谢谢!

  • 写回答

2条回答 默认 最新

  • 快乐鹦鹉 2022-10-21 15:45
    关注
    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);
    }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月30日
  • 已采纳回答 10月22日
  • 创建了问题 10月21日