输入10个整数, 用函数编程将其中最大数与最小数位置互换,然后输出互换后的数组。
输入
输入十个整数(每个数字用一个空格隔开)
输出
输出交换最大最小值后的数组(每个数字宽度为4,向右对齐)
样例
标准输入复制文本 |
22 3 1 4 5 6 7 65 8 90 |
标准输出复制文本 |
22 3 90 4 5 6 7 65 8 1 |
解题思路:
可以设立max 和 min 两个数均为0来作为数组的首个下标,再通过数组值比较来确定最值的下标,再进行数组值交换
#include <bits/stdc++.h>
using namespace std;
int main(){
int a[1000];
int max=0,min=0;
for(int i=0;i<10;i++){
cin>>a[i];
//找到最值的下标
if(a[i]>=a[max]){max=i;
}
if(a[i]<=a[min]){min=i;
}
}
//交换最值
int temp;
temp=a[max];
a[max]=a[min];
a[min]=temp;
for(int i=0;i<10;i++){
printf("%4d",a[i]);
}
}