供参考:
#include <stdio.h>
const int N = 1000;
void fun(int a[], int n, int x)
{
int i;
if (x > a[n - 1]) { // 升序序列插入操作
a[n] = x;
}
else {
for (i = n; x < a[i - 1] && i > 0; i--) {
a[i] = a[i - 1];
}
a[i] = x;
}
}
int main()
{
int n, x, i, a[N];
scanf("%d", &n); //输入元素个数
for (i = 0; i < n; i++) // 输入n个升序数列元素
scanf("%d", &a[i]);
scanf("%d", &x); //输入待插入数
fun(a, n, x);
for (i = 0; i < n + 1; i++)//输出 插入数后的有序数列
printf("%4d", a[i]);
return 0;
}