C语言,输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写3个函数:①输人10个数;②进行处理;③输出10,个数。
时间: 2024-12-04 08:20:59 浏览: 39
利用指针将最小数与第一个数调换,最大数与最后一个数对换(C语言练习例程)
5星 · 资源好评率100%
在C语言中,我们可以编写三个函数来完成这个任务:一个用于输入10个整数,一个用于找到最大和最小值并交换,另一个用于输出这10个数。下面是一个例子:
```c
#include <stdio.h>
// 输入10个整数的函数
void input_numbers(int arr[], int size) {
for (int i = 0; i < size; ++i) {
printf("请输入第 %d 个整数:", i + 1);
scanf("%d", &arr[i]);
}
printf("\n");
}
// 找到并交换最小值与第一个数以及最大值与最后一个数的函数
void swapMinMax(int arr[], int size) {
if (size >= 2) {
int min = arr, max = arr[size - 1];
for (int i = 1; i < size - 1; ++i) {
if (arr[i] < min) {
min = arr[i];
}
if (arr[i] > max) {
max = arr[i];
}
}
// 交换最小值和第一个数,最大值和最后一个数
if (min != arr) {
arr = min;
}
arr[size - 1] = max;
}
}
// 输出数组元素的函数
void print_numbers(int arr[], int size) {
for (int i = 0; i < size; ++i) {
printf("%d ", arr[i]);
}
printf("\n");
}
int main() {
int numbers[10];
// 读取10个整数
input_numbers(numbers, sizeof(numbers) / sizeof(numbers));
// 进行交换操作
swapMinMax(numbers, sizeof(numbers) / sizeof(numbers));
// 输出结果
print_numbers(numbers, sizeof(numbers) / sizeof(numbers));
return 0;
}
```
在这段代码中,我们定义了三个函数:`input_numbers`用于接收用户输入,`swapMinMax`负责查找并交换最小和最大值,`print_numbers`用于显示数组内容。在`main`函数中,这些函数被串联起来执行整个过程。
阅读全文