注册 登录
编程论坛 程序供求

这条代码哪儿错了

时光倒流 发布于 2017-01-20 13:38, 1874 次点击
看看这代码哪错了,往5个数1 2 4 5 6,插一个数3
#include<stdio.h>
int insert(int a[], int num);
void PrintArr(int a[], int n);
int main()
{
    int a[1100];
    int i, n, num, t, j;
    scanf("%d", &n);
    for(i=0;i<n;i++)
    {
        scanf("%d", &a[i]);
    }
    for(i=0;i<n-1;i++)
    {
       for(j=i+1;j<n;j++)
           if(a[i]>a[j])
           {
               t=a[i];a[i]=a[j];a[j]=t;
           }
    }
    scanf("%d", &num);
     insert(a, num);
     PrintArr(a, n);
     return 0;
}
int insert(int a[], int num)
{
    int i;
    for(i=1100;i>=0;i--)
    {
        if(a[i]>num)
            a[i+1] = a[i];
        else
        break;
    }
    a[i+1]=num;
return num;
}
void PrintArr(int a[], int n)
{
    int i;
    for(i=0;i<=n;i++)
    {
        printf("%d ", a[i]);
    }
    printf("\n");
}
0 回复
1