使用for循环打印数组元素

时间:2016-04-08 01:49:45

标签: java arrays

这是我的在线教科书中的一个挑战性问题我只能将这些数字推向前方...... :(

编写for循环以打印courseGrades中的所有元素,每个元素后面都有一个空格(包括最后一个)。打印前进,然后向后打印。用换行符结束每个循环。 例如:如果courseGrades = {7,9,11,10},请打印: 7 9 11 10 10 11 9 7

提示:使用两个for循环。第二个循环以i = NUM​​_VALS - 1开始。

注意:这些活动可能会测试具有不同测试值的代码。此活动将执行两个测试,第一个使用4个元素的数组(int courseGrades [4]),第二个使用2个元素的数组(int courseGrades [2])。

import java.util.Scanner;

 public class CourseGradePrinter {
 public static void main (String [] args) {
  final int NUM_VALS = 4;
  int[] courseGrades = new int[NUM_VALS];
  int i = 0;

  courseGrades[0] = 7;
  courseGrades[1] = 9;
  courseGrades[2] = 11;
  courseGrades[3] = 10;

  /* Your solution goes here  */

  for(i=0; i<NUM_VALS; i++){
     System.out.print(courseGrades[i] + " ");
  }

  for(i=NUM_VALS -1; i>3; i++){
     System.out.print(courseGrades[i]+ " ");
     }

  return;
}
}

3 个答案:

答案 0 :(得分:1)

这是从zyBooks回答问题的代码,6.2.3:使用for循环打印数组元素。

 for (i = 0; i < NUM_VALS; i++) {
     System.out.print(courseGrades[i] + " ");
 }
 System.out.println("");

 for (i = NUM_VALS - 1; i >= 0; i--) {
    System.out.print(courseGrades[i] + " ");
 }

 System.out.println(""); 

答案 1 :(得分:0)

你的两个循环几乎是正确的。尝试使用此代码:

for (int i=0; i < NUM_VALS; i++) {
    // this if statement avoids printing a trailing space at the end.
    if (i > 0) {
        System.out.print(" ");
    }
    System.out.print(courseGrades[i]);
}

for (int i=NUM_VALS-1; i >= 0; i--) {
    if (i > 0) {
        System.out.print(" ");
    }
    System.out.print(courseGrades[i] + " ");
}

答案 2 :(得分:0)

要向后打印,您需要:

for(i = NUM_VALS - 1; i >= 0; i--) {
    System.out.print(courseGrades[i] + " ");
}
// To end with a newline
System.out.println("");