编写程序,输入10个整数,将其中最小的数与第一个数对换,将最大的数与最后一个数对换。
时间: 2023-04-26 12:01:52 浏览: 128
以下是Python代码实现:
nums = [] # 存放输入的10个整数
# 输入10个整数
for i in range(10):
num = int(input("请输入第{}个整数:".format(i+1)))
nums.append(num)
# 找出最小值和最大值的下标
min_index =
max_index =
for i in range(1, 10):
if nums[i] < nums[min_index]:
min_index = i
if nums[i] > nums[max_index]:
max_index = i
# 将最小值与第一个数对换,最大值与最后一个数对换
nums[], nums[min_index] = nums[min_index], nums[]
nums[-1], nums[max_index] = nums[max_index], nums[-1]
# 输出结果
print("处理后的结果为:", nums)
相关问题
1、采用指针方式编写程序输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写3个函数:(1)输入10个数;(2)进行处理;(3)输出处理后的10个数。
以下是使用指针方式编写的程序,实现输入10个整数,将其中最小的数与第一个数对换,将最大的数与最后一个数对换,并输出处理后的10个数的功能:
```c
#include <stdio.h>
void input(int *arr) {
printf("请输入10个整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
}
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
void process(int *arr) {
int *min = arr;
int *max = arr;
for (int i = 1; i < 10; i++) {
if (arr[i] < *min) {
min = &arr[i];
}
if (arr[i] > *max) {
max = &arr[i];
}
}
swap(arr, min);
swap(&arr[9], max);
}
void output(int *arr) {
printf("处理后的10个数为:\n");
for (int i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}
int main() {
int arr[10];
input(arr);
process(arr);
output(arr);
return 0;
}
```
用C++编写程序:用指针的方法处理:输入10个整数,将其中最小的数与第一个数对换,把最大的 数与最后一个数对换。
可以使用指针来实现这个功能,具体的实现步骤如下:
1. 定义一个指向整型数组的指针,并用它来接收用户输入的10个整数。
2. 遍历整型数组,找到其中的最小值和最大值,并记录它们的下标。
3. 使用指针交换最小值和第一个数的位置,以及最大值和最后一个数的位置。
以下是具体的 C++ 代码实现:
```cpp
#include <iostream>
using namespace std;
int main() {
int arr[10];
int *p = arr;
// 输入10个整数
cout << "请输入10个整数:" << endl;
for (int i = 0; i < 10; i++) {
cin >> *(p + i);
}
// 找到最小值和最大值的下标
int min_index = 0, max_index = 0;
for (int i = 1; i < 10; i++) {
if (*(p + i) < *(p + min_index)) {
min_index = i;
}
if (*(p + i) > *(p + max_index)) {
max_index = i;
}
}
// 交换最小值和第一个数的位置
int temp = *p;
*p = *(p + min_index);
*(p + min_index) = temp;
// 交换最大值和最后一个数的位置
temp = *(p + 9);
*(p + 9) = *(p + max_index);
*(p + max_index) = temp;
// 输出结果
cout << "处理后的数组为:" << endl;
for (int i = 0; i < 10; i++) {
cout << *(p + i) << " ";
}
cout << endl;
return 0;
}
```
运行程序,输入10个整数,即可得到处理后的结果。
阅读全文