📜  门| GATE-CS-2016(Set 2)|问题16(1)

📅  最后修改于: 2023-12-03 15:12:43.201000             🧑  作者: Mango

题目:GATE-CS-2016(Set 2) - 问题16

本题主要涉及某个简单的Java程序。

class GATE_MOCK_2016_Q16 {
    public static void main(String[] args){
         int[] arr= {1,2,3,4,5};
         int i = arr.length - 1;
         int j = 0;
         while (i > j) {
             int temp = arr[i];
             arr[i] = arr[j];
             arr[j] = temp;
             i--;
             j++;
         }
         for (i = 0; i < arr.length; i++) {
             System.out.print(arr[i] + " ");
         }      
    }
}

这段程序的作用是将一个整型数组按照逆序输出。具体实现是利用了数组的首尾指针,交换他们所指向的元素值,从而达到整体逆序的目的。

程序中行为的顺序是:

  1. 首先定义一个整型数组arr,并将其初始化为{1,2,3,4,5}。
  2. 然后定义i为arr数组的长度减1,j为0。
  3. 接下来利用while循环,交换数组arr的头和尾元素的值。然后i减1,j加1。
  4. 直到i小于j后跳出循环。
  5. 最后利用for循环,输出数组。

值得注意的是,程序不具有通用性,如:输入数组的元素个数不一样时,输出结果就不一定是完全逆序的。