输入10个整数,用函数编程将其中最大数与最小数的位置互换,然后在主函数中将交换后的数组的所有元素输出。c+++
时间: 2023-06-11 09:09:02 浏览: 107
下面是一个实现此功能的C代码:
```c
#include <stdio.h>
void swap(int *a, int *b) {
int tmp = *a;
*a = *b;
*b = tmp;
}
void swapMinMax(int arr[], int len) {
int min_idx = 0, max_idx = 0;
for (int i = 1; i < len; i++) {
if (arr[i] < arr[min_idx]) {
min_idx = i;
}
if (arr[i] > arr[max_idx]) {
max_idx = i;
}
}
swap(&arr[min_idx], &arr[max_idx]);
}
int main() {
int arr[10];
printf("请输入10个整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
swapMinMax(arr, 10);
printf("交换后的数组为:\n");
for (int i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
首先定义了一个 `swap` 函数,用于交换两个整数的值。然后定义了一个 `swapMinMax` 函数,用于找到数组中的最小值和最大值,并将它们的位置互换。最后在主函数中输入数组,调用 `swapMinMax` 函数交换最小值和最大值的位置,然后输出交换后的数组。
阅读全文