3.输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写三个函数:①输入10个数;②进行处理;③输出10个数。代码
时间: 2023-12-04 19:15:54 浏览: 58
输入10个整数,将其中最小的数与第一个数对换
5星 · 资源好评率100%
以下是基于C语言的实现,实现了输入10个数、进行处理和输出10个数的三个函数。
```c
#include <stdio.h>
// 输入10个数
void input(int arr[], int n) {
printf("Please input %d numbers:\n", n);
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
}
// 进行处理
void process(int arr[], int n) {
int min_index = 0;
int max_index = 0;
for (int i = 1; i < n; i++) {
if (arr[i] < arr[min_index]) {
min_index = i;
}
if (arr[i] > arr[max_index]) {
max_index = i;
}
}
if (min_index != 0) {
int tmp = arr[0];
arr[0] = arr[min_index];
arr[min_index] = tmp;
}
if (max_index != n - 1) {
int tmp = arr[n - 1];
arr[n - 1] = arr[max_index];
arr[max_index] = tmp;
}
}
// 输出10个数
void output(int arr[], int n) {
printf("The result is:\n");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}
int main() {
int arr[10];
input(arr, 10);
process(arr, 10);
output(arr, 10);
return 0;
}
```
在主函数中,首先调用 `input` 函数输入10个数,然后调用 `process` 函数进行处理,最后调用 `output` 函数输出10个数。在 `process` 函数中,使用两个变量 `min_index` 和 `max_index` 来记录最小数和最大数的下标,然后分别与第一个数和最后一个数进行交换。
阅读全文