C语言使用指针输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求写3个函数:①输入10个数;②进行处理;③输出10个数。
时间: 2023-12-04 21:08:08 浏览: 94
下面是一个可能的解决方案:
```c
#include <stdio.h>
void input(int arr[]) {
printf("请输入10个整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
}
void process(int arr[]) {
int min_index = 0, max_index = 0;
for (int i = 1; i < 10; i++) {
if (arr[i] < arr[min_index]) {
min_index = i;
}
if (arr[i] > arr[max_index]) {
max_index = i;
}
}
int temp = arr[0];
arr[0] = arr[min_index];
arr[min_index] = temp;
temp = arr[9];
arr[9] = arr[max_index];
arr[max_index] = temp;
}
void output(int arr[]) {
printf("处理后的结果为:\n");
for (int i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}
int main() {
int arr[10];
input(arr);
process(arr);
output(arr);
return 0;
}
```
这个程序首先调用 `input` 函数,让用户输入10个整数,并将它们存储在数组 `arr` 中。然后调用 `process` 函数,该函数查找数组中的最小值和最大值,并将它们与第一个数和最后一个数交换。最后调用 `output` 函数,将处理后的数组打印出来。
阅读全文