先输入数组长度(长度不超过100),然后输入数组元素,先将最大的与第一个元素交换,再将最小的与最后一个元素交换,输出数组。 输入样例:5 12 8 34 1 54 输出样例:54 8 34 12 1
时间: 2023-06-12 11:06:13 浏览: 53
好的,以下是 Python 代码实现:
```python
n = int(input()) # 数组长度
arr = list(map(int, input().split())) # 数组元素
max_idx = arr.index(max(arr)) # 最大元素的下标
min_idx = arr.index(min(arr)) # 最小元素的下标
arr[0], arr[max_idx] = arr[max_idx], arr[0] # 最大元素与第一个元素交换
arr[-1], arr[min_idx] = arr[min_idx], arr[-1] # 最小元素与最后一个元素交换
print(' '.join(map(str, arr))) # 输出数组
```
输入样例:
```
5
12 8 34 1 54
```
输出样例:
```
54 8 34 12 1
```
相关问题
先输入数组长度(长度不超过100),然后输入数组元素,先将最大的与第一个元素交换,再将最小的与最后一个元素交换,输出数组。
好的,以下是 Python 代码实现:
```python
n = int(input("请输入数组长度:"))
arr = []
for i in range(n):
arr.append(int(input("请输入第%d个元素:" % (i+1))))
# 将最大的与第一个元素交换
max_idx = 0
for i in range(1, n):
if arr[i] > arr[max_idx]:
max_idx = i
arr[0], arr[max_idx] = arr[max_idx], arr[0]
# 将最小的与最后一个元素交换
min_idx = n-1
for i in range(n-2, -1, -1):
if arr[i] < arr[min_idx]:
min_idx = i
arr[n-1], arr[min_idx] = arr[min_idx], arr[n-1]
print("交换后的数组为:", arr)
```
输入示例:
```
请输入数组长度:5
请输入第1个元素:3
请输入第2个元素:1
请输入第3个元素:7
请输入第4个元素:5
请输入第5个元素:2
```
输出示例:
```
交换后的数组为: [7, 1, 5, 3, 2]
```
C语言 先输入数组长度(长度不超过100),然后输入数组元素,先将最大的与第一个元素交换,再将最小的与最后一个元素交换,输出数组。
以下是 C 语言代码实现:
```c
#include <stdio.h>
int main() {
int n, i, max_index = 0, min_index = 0;
int arr[100], temp;
printf("请输入数组长度(不超过100):");
scanf("%d", &n);
printf("请输入数组元素:");
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
if (arr[i] > arr[max_index]) {
max_index = i;
}
if (arr[i] < arr[min_index]) {
min_index = i;
}
}
// 将最大值与第一个元素交换
temp = arr[max_index];
arr[max_index] = arr[0];
arr[0] = temp;
// 将最小值与最后一个元素交换
temp = arr[min_index];
arr[min_index] = arr[n-1];
arr[n-1] = temp;
printf("交换后的数组为:");
for (i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
输入示例:
```
请输入数组长度(不超过100):5
请输入数组元素:3 1 5 2 4
```
输出示例:
```
交换后的数组为:5 1 4 2 3
```
阅读全文