写一个数组插入一个数并按顺序排列的c语言程序
时间: 2024-09-07 21:01:20 浏览: 43
在C语言中,我们可以使用数组和排序算法(如冒泡排序、快速排序等)来实现插入一个数并将数组按顺序排列。这里是一个简单的例子,我们将使用冒泡排序来完成这个任务:
```c
#include <stdio.h>
// 冒泡排序函数
void bubbleSort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
// 交换元素
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
// 插入元素的函数
void insertAndSort(int arr[], int n, int num) {
// 将新数添加到数组末尾
arr[n] = num;
// 重新排序数组
bubbleSort(arr, n + 1);
}
int main() {
int arr[] = {10, 5, 7, 3, 9};
int n = sizeof(arr) / sizeof(arr[0]);
int num = 6; // 要插入的数
printf("原始数组: ");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
insertAndSort(arr, n, num);
printf("\n插入 %d 后的排序数组: ", num);
for (int i = 0; i <= n; i++) {
printf("%d ", arr[i]); // 包含新插入的数
}
return 0;
}
```
在这个程序中,我们首先定义了一个数组 `arr` 和它的大小 `n`,然后请求用户输入一个数字 `num`。接着,在 `insertAndSort` 函数中,我们将 `num` 添加到数组的末尾,然后对整个数组进行冒泡排序。最后,打印出排序后的数组。
阅读全文