展开全部
题目很简单,关键是思路先找出最大值、最小值,并记住其位置
再做交换
具体参考下列代码62616964757a686964616fe4b893e5b19e31333361306330import java.util.Arrays;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// 第一步:定义数组
int[] arrs = { 6, 2, 9, 15, 1, 5, 20, 7, 18 };
// 第二步:找出最大值、最小值
int maxIndex = 0; // 最大值初始索引 = 0
int max = arrs[maxIndex];
int minIndex = 0; // 最小值初始索引 = 0
int min = arrs[minIndex];
for (int i = 1; i
if (arrs[i] > max) {
max = arrs[i];
maxIndex = i;
}
if (arrs[i]
min = arrs[i];
minIndex = i;
}
}
System.out.printf(“第[%d]个值是最大值:%d \n”, (maxIndex + 1), max);
System.out.printf(“第[%d]个值是最小值:%d \n”, (minIndex + 1), min);
System.out.println(“开始交换最大值”);
int end = arrs[arrs.length – 1]; // 记录最后一个元素值
arrs[arrs.length – 1] = max; // 最后一个元素值 = max
arrs[maxIndex] = end; // 原最大值 = 最后一个值
int start = arrs[0]; // 记录第一个元素值
arrs[0] = min; // 第一个元素值 = min
arrs[minIndex] = start; // 原最小值 = 第一个值
System.out.println(“最终结果:”);
System.out.println(Arrays.toString(arrs));
}
}
亲,答题也需要时间和精力,如果回答满意,请及时采纳,你的合作是我回答的动力!! 谢谢!!