输入一个正整数n(0<n<9)和n个从小到大排好顺序的整数,再输入一个整数x,把x插入到这组数据中,使该组数据仍然有序。编写c程序
时间: 2024-05-05 09:17:54 浏览: 167
百度之星05~08题目
这是一个关于插入排序的问题,您可以参考以下C语言代码:
```
#include <stdio.h>
int main() {
int n, x, a[10], i, j;
scanf("%d", &n);
for (i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
scanf("%d", &x);
for (i = 0; i < n; i++) {
if (a[i] > x) {
for (j = n; j > i; j--) {
a[j] = a[j - 1];
}
a[i] = x;
n++;
break;
}
}
for (i = 0; i < n; i++) {
printf("%d ", a[i]);
}
return 0;
}
```
以上代码中,首先读入n和n个整数,再读入待插入的整数x。然后,从数组的第一个元素开始遍历,如果遇到一个大于x的元素,则将x插入到这个元素的前面,然后将后面的元素依次后移。最后输出新的数组即可。
阅读全文