m0_67917750 2022-06-08 21:23 采纳率: 100%
浏览 21
已结题

C语言程序无法运行这个片段是求一组数字每个数字的位数

void main()
{
int n,i,l,m,k,j,u,max=0;
printf("请输入数组内元素个数:");
scanf("%d",&n);
int a[i];
int b[i];
printf("请输入元素:");
for(int i=0; i<n; i++)
{
scanf("%d",&a[i]);
}
for(i=0; i<n; i++)
{
m=1;
u=a[i]/10;
while(u>=1)
{
u=a[i]/10;
m=m+1;
}
printf("%d",m);
}
}

  • 写回答

1条回答 默认 最新

  • 白驹_过隙 新星创作者: 算法与数据结构技术领域 2022-06-08 21:25
    关注

    加上头文件,改了下数组大小和一些bug

    img

    #include<stdio.h>
    int main()
    {
        int n,i,l,m,k,j,u,max=0;
        printf("请输入数组内元素个数:");
        scanf("%d",&n);
        int a[n];
        int b[n];
        printf("请输入元素:");
        for(int i=0; i<n; i++)
        {
            scanf("%d",&a[i]);
        }
        for(i=0; i<n; i++)
        {
            m=0;
            while(a[i]>=1)
            {
                a[i]=a[i]/10;
                m=m+1;
            }
            printf("%d\n",m);
        }
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 6月16日
  • 已采纳回答 6月8日
  • 创建了问题 6月8日