输入10个整数将其中最小的数与第一个数对换,把最大的数与最后一个数对换 写三个函数,1.输入10个数 2.进行处理 3.输出10个数 用c语言程序运行
时间: 2024-12-28 08:35:43 浏览: 11
在C语言中,你可以编写三个函数来完成这个任务:`input_numbers()`, `swap_min_max()` 和 `output_numbers()`。这里是一个简单的示例:
```c
#include <stdio.h>
// 函数1:输入10个整数
void input_numbers(int arr[], int size) {
printf("请输入10个整数:");
for (int i = 0; i < size; i++) {
scanf("%d", &arr[i]);
}
}
// 函数2:查找并交换最小值与第一个数,最大值与最后一个数
void swap_min_max(int arr[], int size) {
if (size > 1) { // 防止数组过小导致边界异常
int min_idx = 0;
int max_idx = size - 1;
// 找到最小值和最大值的索引
for (int i = 1; i < size - 1; i++) {
if (arr[i] < arr[min_idx]) {
min_idx = i;
} else if (arr[i] > arr[max_idx]) {
max_idx = i;
}
}
// 交换元素
int temp = arr[min_idx];
arr[min_idx] = arr[0];
arr[0] = temp;
temp = arr[max_idx];
arr[max_idx] = arr[size - 1];
arr[size - 1] = temp;
}
}
// 函数3:输出10个数
void output_numbers(int arr[], int size) {
printf("处理后的结果是:");
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}
int main() {
int numbers[10];
int size = 10;
input_numbers(numbers, size);
swap_min_max(numbers, size);
output_numbers(numbers, size);
return 0;
}
```
当你运行这个程序,它会提示你输入10个整数,然后在不改变其他元素顺序的前提下找到最小的数与第一个数和最大的数与最后一个数对换,最后输出处理后的结果。
阅读全文