使用C语言写一个代码,使输入10个整数,将其中最小的数与第一个数对换,将最大的数与最后一个对换,最后输出整个数组
时间: 2025-01-11 18:54:53 浏览: 39
当然,我可以帮你编写一个C语言程序来实现这个要求。首先,我们需要定义一个数组存储这10个整数,然后找到最小值、最大值并进行交换。这是一个简单的示例:
```c
#include <stdio.h>
// 函数声明
void swap(int* a, int* b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int arr[10];
// 输入10个整数
printf("Enter 10 integers: ");
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
// 找到最小值(假设第一个元素是初始最小值)
int min_index = 0;
for (int i = 1; i < 10; i++) {
if (arr[i] < arr[min_index]) {
min_index = i;
}
}
// 找到最大值(同样假设最后一个元素是初始最大值)
int max_index = 9;
for (int i = 8; i >= 0; i--) { // 注意不包括最后一个元素,防止重复检查
if (arr[i] > arr[max_index]) {
max_index = i;
}
}
// 如果最小值不是第一个元素,交换它们
if (min_index != 0) {
swap(&arr[0], &arr[min_index]);
}
// 如果最大值不是最后一个元素,交换它们
if (max_index != 9) {
swap(&arr[max_index], &arr[9]);
}
// 输出数组
printf("Array after swapping: ");
for (int i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
运行此程序后,你会被提示输入10个整数,然后程序会找到最小值与第一个数以及最大值与最后一个数并进行交换,最后显示调整后的数组。
阅读全文
相关推荐
















