如何使用for循环询问学生[0]的成绩,[1]等?截至目前,我的for循环毫无意义。
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
//arch
implementation "android.arch.lifecycle:runtime:${arch}"
implementation "android.arch.lifecycle:extensions:${arch}"
annotationProcessor "android.arch.lifecycle:compiler:${arch}"
//room
compile "android.arch.persistence.room:runtime:${archRoomVersion}"
annotationProcessor "android.arch.lifecycle:compiler:${arch}"
annotationProcessor "android.arch.persistence.room:compiler:${archRoomVersion}"
kapt "android.arch.persistence.room:compiler:1.0.0-alpha1"
必须有比硬编码每个学生和成绩阵列更好的方法。
答案 0 :(得分:4)
您可以获取输入并将其分配给循环本身。
for(int i = 0; i < grades.length; i++)
{
System.out.print("Enter grade for " + students[i] + ": ");
grades[i] = sc.nextInt();
}
这就是全部。您不需要重复代码,因为循环将通过使用索引i
访问每个元素来执行此操作。
但是,我不确定代码中的grades[i] = i + 1;
行是什么,因为您无论如何都会使用您获得的值覆盖该值。
答案 1 :(得分:0)
如果我正确地解释您的问题,您要做的是接受用户使用for循环的成绩值?我的答案如下,我还打印了可以接受的成绩。
public static void main(String[] args) {
//declare grade and student array
int[] grades = new int[5];
String[] students = { "Bill", "Tom", "Mark", "Nic", "Miguel"};
Scanner sc = new Scanner(System.in);
System.out.println("please enter the grades of students");
for(int i=0; i<students.length; i++){
grades[i]= sc.nextInt();
}
for(int i=0; i<grades.length; i++){
System.out.println(grades[i]);
}
}