C语言程序设计有 n ( n <=100)个整数,已经按照从小到大顺序排列好,现在另外给一个整数 m ,请将该数插入到序列中,并使新的序列仍然有序。
时间: 2024-05-22 11:14:58 浏览: 143
python 有一个已经排好序的数组 现输入一个数,要求按原来的规律将它插入数组中 (示例)
5星 · 资源好评率100%
可以使用插入排序算法,从序列的最后一个元素开始比较,如果该元素大于 m,则将该元素后移一位,直到找到一个元素小于等于 m 为止,然后将 m 插入到该元素之后。
具体操作可以参考以下 C 语言代码:
#include <stdio.h>
int main() {
int n, m, a[100];
printf("请输入整数个数 n:");
scanf("%d", &n);
printf("请输入 %d 个整数:", n);
for (int i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
printf("请输入要插入的整数 m:");
scanf("%d", &m);
int i;
for (i = n - 1; i >= 0; i--) {
if (a[i] > m) {
a[i+1] = a[i];
} else {
break;
}
}
a[i+1] = m;
printf("插入 %d 后的序列为:", m);
for (int i = 0; i <= n; i++) {
printf("%d ", a[i]);
}
return 0;
}
阅读全文