用c语言编程:输入10个整数,找出最大数和最小数所在位置,并把二者对调,然后输出。
时间: 2024-12-11 08:37:54 浏览: 9
在C语言中,可以使用以下代码来完成这个任务:
```c
#include <stdio.h>
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int arr[10], i, max_val = arr[0], min_val = arr[0], max_index = 0, min_index = 0;
// 输入10个整数
for (i = 0; i < 10; i++) {
printf("请输入第%d个整数:", i + 1);
scanf("%d", &arr[i]);
if (arr[i] > max_val) {
max_val = arr[i];
max_index = i;
} else if (arr[i] < min_val) {
min_val = arr[i];
min_index = i;
}
}
// 找到最大数和最小数位置,然后对调
swap(&arr[max_index], &arr[min_index]);
// 输出数组及调整后的顺序
printf("原始数组:");
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
printf("调整后数组:");
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
在这个程序中,`swap`函数用于交换两个整数的值。在`main`函数中,我们初始化一个数组`arr`和一些变量来跟踪最大值、最小值及其索引。接着读取用户的10个整数,更新这些值和索引。找到最大值和最小值之后,我们调用`swap`函数来交换它们在数组中的位置。最后分别输出原始数组和调整后的数组。
阅读全文