第1关:初识数组
任务描述
本关任务:定义数组,使用数组。
package step1;
public class HelloWorld {
public static void main(String[] args) {
/********** Begin **********/
int[] score = {91,88,60};
System.out.println("数组的第一个值为:" +score[0]); //在这里输出数组的第一个值
System.out.println("数组的第二个值为:" +score[1]); //在这里输出数组的第二个值
System.out.println("数组的第三个值为:" +score[2]); //在这里输出数组的第三个值
/********** End **********/
}
}
第2关:数组的使用
任务描述
本关任务:使用多种方式定义数组,并输出数组中的数据。
package step2;
import java.util.Scanner;
public class HelloWorld {
public static void main(String[] args) {
/********** Begin **********/
//在这里定义一个长度为4的字符串数组,用来存放学生姓名
String[] stuNames = new String[] {"张三","张无忌","张三丰","张岁山"};
//在这里给stuNames数组赋值 分别为 张三,张无忌,张三丰,张岁山
//在这里输出stuNames数组中的数据
System.out.println("数组中的第一个数据为:" + stuNames[0]);
System.out.println("数组中的第二个数据为:" + stuNames[1]);
System.out.println("数组中的第三个数据为:" + stuNames[2]);
System.out.println("数组中的第四个数据为:" + stuNames[3]);
int[] scores;
Scanner sc = new Scanner(System.in);
//在这里使用Scanner获取系统输入的整数,并用获取到的数据来设置scores数组的长度
int length = sc.nextInt();
scores = new int[length];
/********** End **********/
System.out.println("数组scores的长度为:" + scores.length);
}
}
第3关:选择题通通跳过
第4关:数组练习-平均值和最大值
任务描述
本关任务:编写一个能计算数组平均值和最大值的小程序。
package step3;
import java.util.Scanner;
public class HelloWorld {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 将max的值设为最小,是为了让他第一次一定变为输入数据中的值
int max=0;
// 这里给sum设为double是为了后续平均数
double sum=0;
// 这种写法的意思是接收用户输入的数据作为scores数组的长度
int[] scores = new int[sc.nextInt()];
//循环给数组赋值
for(int i = 0 ; i< scores.length;i++){
scores[i] = sc.nextInt();
// 91>0,所以max现在变成了91,后续也会用91和其它值进行比较,max就会变为最大的值了
if(scores[i]>max) max=scores[i];
// 累加
sum+=scores[i];
}
/********** Begin **********/
//在这里计算数组scores的平均值和最大值
// sum为double,scores.length为int,低转高自动转
System.out.println("平均值:" +sum/scores.length);
System.out.println("最大值:" +max);
/********** End **********/
}
}
第5关:二维数组
package step4;
public class HelloWorld {
public static void main(String[] args) {
/********** Begin **********/
// 声明一个二维整型数组 scores,其中包含三个一维数组,每个一维数组有两个元素。
// 每个一维数组代表一个学生的成绩,第一个元素是语文成绩,第二个元素是数学成绩。
int [][] scores = {
{92,85},
{91,65},
{90,33}
};
// 定义两个整型变量 i 和 j,用于控制循环。
// 外层循环遍历二维数组的行,内层循环遍历二维数组的列。
// 使用 System.out.println() 打印输出二维数组中每个元素的值。
int i,j;
for(i=0;i<3;i++){
for(j=0;j<2;j++){
System.out.println(scores[i][j]);
}
}
// 继续循环遍历二维数组,将每个元素的第一列赋值为1,第二列赋值为2。
// 这个操作会使得原先的成绩数据被修改。
for(i=0;i<3;i++){
for(j=0;j<2;j++){
scores[i][0] = 1;
scores[i][1] = 2;
}
}
// 最后再次循环遍历二维数组,并使用 System.out.println() 打印输出修改后的二维数组中每个元素的值。
for(i=0;i<3;i++){
for(j=0;j<2;j++){
System.out.println(scores[i][j]);
}
}
/********** End **********/
}
}