import java.util.*;
publicclass Ex35 {
publicstaticvoid main(String[] args) {
int i, min, max, n, temp1, temp2;
int a[];
System.
out.println("輸入數組的長度:");
Scanner keyboard =
new Scanner(System.
in);
n = keyboard.nextInt();
a =
newint[n];
for (i = 0; i < n; i++) {
System.
out.print("輸入第" + (i + 1) + "個數據");
a[i] = keyboard.nextInt();
}
//以上是輸入整個數組
max = 0;
min = 0;
//設置兩個標志,開始都指向第一個數
for (i = 1; i < n; i++) {
if (a[i] > a[max])
max = i; //遍歷數組,如果大於a[max],就把他的數組下標賦給max
if (a[i] < a[min])
min = i; //同上,如果小於a[
min],就把他的數組下標賦給min
}
//以上for循環找到最大值和最小值,max是最大值的下標,
min是最小值的下標
temp1 = a[0];
temp2 = a[min]; //這兩個
temp只是為了在交換時使用
a[0] = a[max];
a[max] = temp1; //首先交換a[0]和最大值a[max]
if (min != 0) { //如果最小值不是a[0],執行下面
a[min] = a[n - 1];
a[n - 1] = temp2; //交換a[
min]和a[n-1]
}
else { //如果最小值是a[0],執行下面
a[max] = a[n - 1];
a[n - 1] = temp1;
}
for (i = 0; i < n; i++) { //輸出數組
System.
out.print(a[i] + " ");
}
}
}
*