已有一个已排好(从小到大)的n个元素的整形数组,输入一个整数数,要求按原来排序的规律将它插入数组中。
#include<stdio.h>
#define N 100
void insert(int n, int a[], int m)
{
int i, j;
for (i = 0; i < n; i++)
{
if (a[i] > m)
{
for (j = n - 1; j >= i; j--)
{
a[j + 1] = a[j];
}
break;
}
}
a[i] = m;
}
int main()
{
int i, n, m, a[N];
while (scanf("%d", &n) != EOF)
{
for (i = 0; i < n; i++)
{
scanf("%d", &a[i]);
}
scanf("%d", &m);
insert(n, a, m);
for (i = 0; i <= n; i++)
{
printf("%d ", a[i]);
}
}
}