输入十个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求写三个函数。1.输入十个数2.进行处理3.输出十个数用指针完成。用c语言完成
时间: 2023-12-04 11:06:56 浏览: 22
以下是实现代码:
```c
#include <stdio.h>
void input(int *arr, int n) {
printf("请输入%d个整数:", n);
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
}
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
void process(int *arr, int n) {
int *min = &arr[0], *max = &arr[0];
for (int i = 1; i < n; i++) {
if (arr[i] < *min) {
min = &arr[i];
}
if (arr[i] > *max) {
max = &arr[i];
}
}
swap(&arr[0], min);
swap(max, &arr[n-1]);
}
void output(int *arr, int n) {
printf("处理后的数组为:");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
}
int main() {
int arr[10];
input(arr, 10);
process(arr, 10);
output(arr, 10);
return 0;
}
```
其中,`input`函数用于输入十个整数,`swap`函数用于交换两个整数的值,`process`函数用于处理数组,找到最小和最大值并进行交换,`output`函数用于输出处理后的数组。主函数中先调用`input`函数输入十个数,再调用`process`函数进行处理,最后调用`output`函数输出处理后的数组。
阅读全文