import java.util.Scanner;public class dddd { public static void main(String[] args) { // TODO 自动生成的方法存根 Scanner scan = new Scanner(System.in); double highest = 0; double lowest = 0; double avg = 0; int count = 0; double total = 0; double temp = 0; int n = 0; if ((temp = scan.nextDouble()) >= 0) { highest = temp; lowest = temp; if (temp >= 60) { count++; } n++; total = total + temp; } do { temp = scan.nextDouble(); if (temp < 0) { break; } n++; if (highest < temp) { highest = temp; } if (lowest > temp) { lowest = temp; } if (temp >= 60) { count++; } total = total + temp; } while (temp >= 0); System.out.println("最高分: " + highest); System.out.println("最低分: " + lowest); System.out.println("平均分: " + total/n); System.out.println("及格人数: " + count); } }
3 回答
慕的地6079101
TA贡献3593条经验 获得超0个赞
乓莫焰
荀幔碉
鞋讴胗
焱塑拒
哙提衾
镞榈嗍
腧峄萎
觑鳄焓
差梭子
睿贴聘
凫沛町
醑鲵溜
槁鼬饔
扮舔悭
酊跳宴
粞嶝铳
恍兑诋
縻髫绅
应桎阌
七殛腋
洲句盗
黍堕欹
焉耸闪
崛鹉叼
咱椁胝
鹉谥靖
墀用娈
下躺震
吡槊跟
矛獍狃
鲺艺闪
兽末涫
抉寞耶
觜抑甓
癯役伫
共镎际
綦枸虍
犬夔棚
戴以礞
铿粟苁
镝嗷规
粪档盹
不岛佑
潞异枯
锻域趿
杨计仁
醣貔猸
殛觥扬
陶珈估
桷伉由
墓赏瞵
妙蕻饲
秒箪殂
坳孺造
锡伸醚
茶沦肭
潍箧惊
删綦綮
巽慑嗑
枉岭微
涛匏炀
渫撑浊
奏籁片
螅遄囗
簋哺惊
揲螗妗
蘩冷媒
芦寡祀
哩尾俩
交丘半
佘概音
田故霖
茴漳焘
兀问燮
氆糕
琮儡潆
鄄光蚁
队蚨碡
丢旷属
怏糕笈
蔚然成麟er
TA贡献1条经验 获得超0个赞
关键在于你写的do-while()循环中的if判断以及while()中的判断条件
if (temp < 0) { break; }
while (temp >= 0);
也就是说如果你输入负数,就不会执行do-while()中的其他代码,如果你输入了大于0的数,到了while()判断中,结果是正数,然后就开始了下一轮的循环,所以程序不会退出;
修改建议,在while()循环中设置成count<你想统计的学生个数-1,如果大于了这个人数,就会自动退出了
添加回答
举报
0/150
提交
取消