C语言中,用函数的知识简单写这个代码。输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写三个函数。①输入10个数②进行处理③输出10个数
时间: 2025-01-24 19:09:39 浏览: 32
好的,我来为您编写一个C语言程序,实现输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换的功能。这个程序将包含三个函数:输入函数、处理函数和输出函数。以下是代码实现:
```c
#include <stdio.h>
// 函数声明
void inputNumbers(int arr[]);
void processNumbers(int arr[]);
void outputNumbers(int arr[]);
int main() {
int numbers[10];
// 输入10个数
inputNumbers(numbers);
// 进行处理
processNumbers(numbers);
// 输出10个数
outputNumbers(numbers);
return 0;
}
// 输入函数
void inputNumbers(int arr[]) {
printf("请输入10个整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
}
// 处理函数
void processNumbers(int arr[]) {
int minIndex = 0, maxIndex = 0;
// 找到最小值和最大值的索引
for (int i = 1; i < 10; i++) {
if (arr[i] < arr[minIndex]) {
minIndex = i;
}
if (arr[i] > arr[maxIndex]) {
maxIndex = i;
}
}
// 交换最小值与第一个数
if (minIndex != 0) {
int temp = arr[0];
arr[0] = arr[minIndex];
arr[minIndex] = temp;
}
// 交换最大值与最后一个数
if (maxIndex != 9) {
int temp = arr[9];
arr[9] = arr[maxIndex];
arr[maxIndex] = temp;
}
}
// 输出函数
void outputNumbers(int arr[]) {
printf("处理后的结果:\n");
for (int i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}
```
这个程序的工作流程如下:
1. 主函数中,我们首先声明一个长度为10的整数数组。
2. 然后,我们调用inputNumbers函数来输入10个整数。
3. 接着,我们调用processNumbers函数来进行处理,即将最小的数与第一个数对换,把最大的数与最后一个数对换。
4. 最后,我们调用outputNumbers函数来输出处理后的结果。
5. inputNumbers函数使用循环和scanf函数来读取用户输入的10个整数。
6. processNumbers函数首先遍历数组找到最小值和最大值的索引,然后分别与第一个和最后一个元素交换(如果它们不在正确的位置)。
7. outputNumbers函数使用循环和printf函数来输出处理后的数组。
这个程序满足了您的要求,使用三个函数分别完成输入、处理和输出操作。它可以正确地对输入的10个整数进行所需的交换操作。
阅读全文
相关推荐

















