C语言程序:将新数据插入有序数组
#include <stdio.h>
int main() { int arr[10]; // 存储输入的有序数组 int new_num; // 存储要插入的新数据 int i, j; // 循环计数器
// 输入已经有序的数组
printf('请输入 9 个已经从小到大有序的数组:\n');
for (i = 0; i < 9; i++) {
scanf('%d', &arr[i]);
}
// 输入新数据
printf('请输入要插入的新数据:\n');
scanf('%d', &new_num);
// 找到插入的位置
for (i = 0; i < 9; i++) {
if (new_num < arr[i]) {
// 找到插入位置,后面所有的元素都需要向后移动一位
for (j = 8; j >= i; j--) {
arr[j + 1] = arr[j];
}
arr[i] = new_num; // 将新数据插入到数组中
break;
}
}
// 输出插入新数据后的数组
printf('插入新数据后的数组为:\n');
for (i = 0; i < 10; i++) {
printf('%d ', arr[i]);
}
printf('\n');
return 0;
}
原文地址: https://www.cveoy.top/t/topic/nVDe 著作权归作者所有。请勿转载和采集!