用c语言编写一个函数 函数作用为向数组中插入一个数字,并输出插入数后的数组
时间: 2024-09-07 16:05:33 浏览: 62
C语言 统计数字的出现频率,并将出现频率最高的前100个数字按照降序排列后写入到文件中
在 C 语言中,你可以编写一个名为 `insert_into_array` 的函数来完成此任务。这里是一个示例,它接受一个整型数组、数组的当前大小(作为一个指向数组大小的指针)、以及要插入的数值:
```c
#include <stdio.h>
// 函数声明
void insert_into_array(int arr[], int *size, int value);
void print_array(int arr[], int size) {
printf("[ ");
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("]\n");
}
void insert_into_array(int arr[], int *size, int value) {
// 验证空间是否足够
if (*size >= SIZE) {
printf("数组已满,无法插入更多元素。\n");
return;
}
// 将元素移动到右侧,腾出空间
for (int i = *size; i > 0; i--) {
arr[i] = arr[i - 1];
}
// 插入新的元素
arr[0] = value;
(*size)++;
printf("插入 %d 后的数组:\n", value);
print_array(arr, *size);
}
int main() {
int arr[SIZE]; // 假设 SIZE 已经定义好
int size = 0;
int num_to_insert = 123;
// 初始化数组(这里省略)
// ...
insert_into_array(arr, &size, num_to_insert);
return 0;
}
```
这个函数首先检查是否有足够的空间插入新的值,如果没有则提示信息。接着,它遍历数组将所有元素向右移动一位,然后在第一个位置插入新值,并更新数组大小。最后,打印插入新值后的数组。
阅读全文