dve-c++怎么自定义函数插入一个数并排序

调用函数实现对数组元素的插入并排序输出

```c++
#include
int  inssort (int a[], int n) 
{
    int i, j, temp;
    for (i = 1; i < n; i++)
    {
        if (a[i] < a[i - 1])
        {
            temp = a[i];
            for (j = i - 1; j > 0 && a[j] > temp; -- j)
            {
                a[j + 1] = a[j];
            }
            a[j + 1] = temp; 
        }
    }
}

int main()
{ int a,i,b[a];
  printf("输入数组中的元素个数:");
   scanf("%d",&a);
    printf("输入数组中的元素:");
  for(i=0;iscanf("%d",&b[i]);
  printf("输入一个要插入的数:");
   scanf("%d",&b[i+1]);
  printf("排序之后:%d",inssort);
}

```

参考如下:

#include<stdio.h>

/*
 冒泡排序
 */
void bubbleSort(int a[],int n)
{
    int i,j,t,noswap;
    for(i=0;i< n-1; i++)
    {
        noswap=1;
        for(j=n-1;j>i;j--)
            if(a[j-1]>a[j])
            {
                t=a[j-1];
                a[j-1]=a[j];
                a[j]=t;
                noswap=0;
            }
        if(noswap)    
            break;
    }
}

int main()
{ 
    int a,i;
    printf("输入数组中的元素个数:");
    scanf("%d",&a);
    int b[a+1];
    printf("输入数组中的元素:");
    
    for(i=0; i < a; i++)
        scanf("%d", &b[i]);
    
    printf("输入一个要插入的数:");
    scanf("%d",&b[a]);

    bubbleSort(b, a + 1);

    printf("排序之后:");
    for(i=0; i < a + 1; i++)
        printf("%d ", b[i]);
}

img


如有帮助,欢迎采纳哈!

在这里插入图片描述

本人的开源项目,欢迎star支持下!!!