c语言代码随机输入20个整数:1)删除第五个和第十个位置的整数后输出整数集合。2)输出排序后的整数集合。3)将数值10插入到排序后整数集中的合适位置。
时间: 2024-09-18 07:01:48 浏览: 55
在C语言中,你可以使用`<stdio.h>`、`<stdlib.h>`和`<time.h>`头文件来处理用户输入并实现这个功能。以下是一个示例程序:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void insert(int arr[], int n, int value) {
int i;
for (i = n - 1; i >= 0 && arr[i] > value; i--) {
arr[i + 1] = arr[i];
}
arr[i + 1] = value;
}
int main() {
srand(time(0)); // 初始化随机数种子
int numbers[20];
printf("请输入20个整数:\n");
for (int i = 0; i < 20; i++) {
scanf("%d", &numbers[i]);
}
// 删除第五个和第十个元素
int delete_index[] = {4, 9};
for (int index : delete_index) {
if (index < 20) {
memmove(&numbers[index], &numbers[index + 1], sizeof(numbers[index]) * (20 - index - 1));
}
}
printf("删除第五个和第十个元素后的数组:\n");
for (int i = 0; i < 18; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
// 对剩余的数组进行排序
qsort(numbers, 18, sizeof(int), compare_ints); // 假设compare_ints是自定义的比较函数
printf("排序后的数组:\n");
for (int i = 0; i < 18; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
// 将10插入排序后的适当位置
insert(numbers, 18, 10);
printf("插入10后的数组:\n");
for (int i = 0; i < 19; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
return 0;
}
```
注意,这里假设有一个名为`compare_ints`的自定义函数用于排序,实际项目中需要你自己实现。
阅读全文