java代码结果出现NaN 跪求大神指点!

import java.util.Scanner;
public class Test11 {
public static void main(String[] args) {
int[] score = new int[4]; //成绩数组
int num = 3; //班级数
int cou = 0; //记录85以上人数
double sum = 0.0; //和
double avg = 0.0; //平均
Scanner input = new Scanner(System.in);
for(int i = 0; i < num; i++){
System.out.println("请输入第" + (i+1) + "个班级的成绩");
for(int j = 0; j < score.length; j++){
System.out.print("第" + (j+1) + "个学员的成绩:");
score[j] = input.nextInt();
if(score[j] < 85){ //小于85跳出循环
continue;
}
sum = sum + score[j]; //85分以上累加
cou++;
}
}
avg = sum / cou; //平均分
System.out.println("所有成绩85分以上的学员的平均分为:" + avg);
}
}
1111

第1个回答  2015-05-14
就是你上边输入的不是数字,是字符串,在转换为int类型时转换不过来,所以是NaN
第2个回答  2015-05-14
当你输入人分数都小于85时,avg = sum / cou;中cou=0,0做被除数会报NAN本回答被提问者采纳
第3个回答  2015-05-14
NaN 是not a number的缩写 没看你的程序,建议你打个断点 自己寻找到底哪里出现的这个错误。
相似回答