有一个已非好序的数组,要求输入一个数m,按原来排序的规律将它插入数组中。^---^一个数组中的值按逆序重新存放。例如,原来顺序为8.6,5,4,1。要求改为1,4,5,6,8。^---^6输出以下的杨
时间: 2024-04-05 17:25:47 浏览: 48
输入数据插入已有数组并按原来顺序排序.cpp
Q1: 有一个已非好序的数组,要求输入一个数m,按原来排序的规律将它插入数组中。
A1: 可以使用插入排序的方法,从数组的第一个元素开始遍历,找到第一个比m大的元素,将m插入到该元素之前即可。具体实现如下:
```c
#include <stdio.h>
int main() {
int a[11] = {1, 2, 3, 4, 5, 7, 8, 9, 10, 11};
int i, j, m;
printf("输入一个数:\n");
scanf("%d", &m);
for (i = 0; i < 11; i++) {
if (m < a[i]) {
for (j = 10; j >= i; j--) {
a[j + 1] = a[j];
}
a[i] = m;
break;
}
}
if (i == 11) {
a[10] = m;
}
printf("排序后:\n");
for (i = 0; i < 11; i++) {
printf("%d ", a[i]);
}
return 0;
}
```
阅读全文