c语言先将输入的一系列整数中的最小值与最后一个数交换,然后将最大值与第一个数交换,最后输出交换后的序列
时间: 2023-11-07 10:08:06 浏览: 87
可以按照以下步骤实现:
1. 首先读入一系列整数,存储在数组中。
2. 找到最小值和最大值的下标。
3. 将最小值与最后一个数交换。
4. 将最大值与第一个数交换。
5. 输出交换后的序列。
下面是具体的代码实现:
```c
#include <stdio.h>
int main() {
int n, i, min_idx, max_idx, temp;
printf("Enter the number of integers: ");
scanf("%d", &n);
int arr[n];
printf("Enter %d integers: ", n);
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
min_idx = max_idx = 0;
for (i = 1; i < n; i++) {
if (arr[i] < arr[min_idx]) {
min_idx = i;
}
if (arr[i] > arr[max_idx]) {
max_idx = i;
}
}
temp = arr[min_idx];
arr[min_idx] = arr[n - 1];
arr[n - 1] = temp;
temp = arr[max_idx];
arr[max_idx] = arr[0];
arr[0] = temp;
printf("After swapping:\n");
for (i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
示例:
```
Enter the number of integers: 5
Enter 5 integers: 3 1 4 2 5
After swapping:
5 1 4 2 3
```
阅读全文