回 帖 发 新 帖 刷新版面

主题:关于数组的问题,请帮忙看看~

要求插入一个数,按原规律输出新数组
#include <stdio.h>
void main()
{
    int x,i,j,a[10]={1,2,4,9,10,11,12,15,80};
   for(i=0;i<9;i++)//输出数组a[10]
       printf("%4d",a[i]);
   printf("\n");
    for(j=0;j<10;j++)//插入一个数
    {    scanf("%d",&x);
        if (x>a[8])
        a[9]=x;
        else
        {    for(i=0;i<10;i++)
            {    if(a[i]>x)
                {a[i]=a[i+1];
                a[i]=x;
            }
        }
        }
        for(i=0;i<10;i++)//输出重排后的数组a[11]
        printf("%4d",a[i]);
        printf("\n");
    }

}

回复列表 (共1个回复)

沙发

主要问题在于你那个最外圈的j循环
如果你只需要插入一个数的话,就不要做最外圈j循环,如果你要插入10个数的话,那么a应该定义成a[19],并且循环要做修改,要加变量

我来回复

您尚未登录,请登录后再回复。点此登录或注册