写一个C语言程序,从键盘输入10个数,用函数编程实现将其中最大数与最小数的位置对换后,再通过主调函数输出调整后的数组。
时间: 2024-03-26 20:35:11 浏览: 78
c语言+从键盘输入10个无序的整数,存放在数组中,找出数组中最大值与最小值的所在的位置,并输出数组元素所在的位置与数组元素的值
5星 · 资源好评率100%
好的,以下是一个实现该功能的代码示例:
```c
#include <stdio.h>
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
void adjust(int arr[], int len) {
int max_index = 0, min_index = 0;
for(int i = 1; i < len; i++) {
if(arr[i] > arr[max_index]) {
max_index = i;
}
if(arr[i] < arr[min_index]) {
min_index = i;
}
}
swap(&arr[max_index], &arr[min_index]);
}
int main() {
int arr[10];
printf("请输入10个整数:\n");
for(int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
adjust(arr, 10);
printf("调整后的数组为:\n");
for(int i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
在这个代码中,我们定义了一个 `swap` 函数用于交换两个数的值,以及一个 `adjust` 函数用于找到数组中的最大值和最小值,然后将它们的位置对换。在主函数中,我们先从键盘输入10个整数,然后调用 `adjust` 函数对数组进行调整,最后输出调整后的数组。
阅读全文