输入10个整数存入数组,将值最大的元素与第一个元素进行值交换,值最小的元素与 最后一个元素进行值交换,然后输出数组。C语言
时间: 2023-11-02 15:08:49 浏览: 79
广东工业大学数据结构anyview代码第一章
4星 · 用户满意度95%
以下是代码实现:
```c
#include <stdio.h>
#define SIZE 10
int main() {
int arr[SIZE];
int i, max_idx = 0, min_idx = SIZE - 1;
// 读取输入的数组
printf("请输入 %d 个整数:\n", SIZE);
for (i = 0; i < SIZE; i++) {
scanf("%d", &arr[i]);
// 记录最大值和最小值的下标
if (arr[i] > arr[max_idx]) {
max_idx = i;
}
if (arr[i] < arr[min_idx]) {
min_idx = i;
}
}
// 交换最大值与第一个元素
int temp = arr[0];
arr[0] = arr[max_idx];
arr[max_idx] = temp;
// 交换最小值与最后一个元素
temp = arr[SIZE - 1];
arr[SIZE - 1] = arr[min_idx];
arr[min_idx] = temp;
// 输出交换后的数组
printf("交换后的数组为:\n");
for (i = 0; i < SIZE; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
运行结果:
```
请输入 10 个整数:
5 9 1 3 6 8 2 7 4 0
交换后的数组为:
0 9 1 3 6 8 2 7 4 5
```
阅读全文