import java.util.Scanner;
class Exchange {
public static void main(String[] args){
Scanner sc = new Scanner(System.in); //创建鼠标录入对象
//创建数组并一步步赋值
System.out.println("您需要输入包含多少个元素的数组?"); //提示输入语句,获取键盘键入的值
int num = sc.nextInt(); //拿到num,可依此创建元素个数为num的数组
int[] arr = new int[num]; //创建数组
System.out.println("您现在需要依次输入" + num + "个整数"); //提示语句
for (int i = 0;i < num ;i++ ) { //for循环给数组赋值
arr = sc.nextInt();
}
System.out.println("交换前的数组为"); //输出语句,调用print方法输出数组
print(arr);
change(arr); //调用change()方法
System.out.println("交换后的数组为"); //输出语句,调用print方法输出数组
print(arr);
exchange(arr); //调用exchange方法交换角标为奇数的元素
System.out.println("交换角标为奇数的元素后的数组为");
print(arr); //输出语句,调用print方法输出数组
}
//定义change方法,用来反转数组的值
public static void change(int[] arr){ //反转数组的值的方法
for (int i = 0 ;i < arr.length/2 ;i++ ) {
int temp = arr;
arr = arr[arr.length -1 -i];
arr[arr.length -1 -i] = temp;
}
}
//定义print方法,打印输出数组的每个元素
public static void print(int[] arr){ //打印数组元素的方法
for (int i = 0; i < arr.length;i++ ) {
System.out.print(" " + arr);
}
System.out.println();
}
//定义exchange方法,实现奇数角标元素的互换
public static void exchange(int[] arr){ //定义exchange方法
for (int i = 0;i < arr.length -2 ;i = i + 2 ) { //将角标为奇数的全部交换
int temp = arr;
arr = arr[i + 2];
arr[i + 2] = temp;
}
}
}