首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

system.in 有关问题

2012-03-13 
system.in 问题用if语句实现学生成绩的百分制到等级制的转换。写if实现的成绩判断,练习通过系统输入输入一

system.in 问题
用if语句实现学生成绩的百分制到等级制的转换。
写if实现的成绩判断,练习通过系统输入输入一个百分制分,通过选择结构Switch转换为英制分数(A:90-100, B:80-89 C:70-79 D: 60-69;F:1-59)(思考:把Switch改为if结构) 
要求:
使用输入流System.in的读操作读入成绩。
把输入的String型转换成int型(使用Integer的一个静态方法ParseInt ())
用if结构判断成绩等级,然后返回结果(不及格的都是E,其它的从A-D每十分一个等级)
用一个循环控制你不断输入成绩并判断,直到成绩输入为0时退出程序。
帮帮忙啊

[解决办法]

Java code
public void judgedScore(){   BufferedReader br = null;    try{        System.out.println("请输入成绩,并回车:");        br = new BufferedReader(new InputStreamReader(System.in));        String line = br.readline();        //做非法字符的判断,不是数字的等,这里就判断null和空字符        if(line == null || "".equals(line.trim())){            System.out.println("你录入的是非法字符,继续Y,其它建退出!");            br = new BufferedReader(new InputStreamReader(System.in));            line = br.readline();        }        if(!"y".equalsIgnoreCase(line)){            return;        }        int score = Integer.parseInt(line.trim());        if(score > 100 || score < 0){            System.out.println("录入的是不符合逻辑的数值,继续Y,其它建退出!");            br = new BufferedReader(new InputStreamReader(System.in));            line = br.readline();        }        if(!"y".equalsIgnoreCase(line)){            return;        }        int flag = 0;        if(score >= 90){            flag = 1;        }else if(score >= 80){            flag = 2;        }else if(score >= 70){            flag = 2;        }else if(score >= 60){            flag = 3;        }else {            flag = 4;        }        switch(flag){            case 1:                    System.out.println("你的成绩登记是A");                    break;            case 2:                    System.out.println("你的成绩登记是B");                    break;            case 3:                    System.out.println("你的成绩登记是C");                    break;            case 4:                    System.out.println("你的成绩登记是D");                    break;            default:                System.out.println("成绩无效!");        }        System.out.println("是否继续录入?继续Y,其它建退出!");        br = new BufferedReader(new InputStreamReader(System.in));        line = br.readline();        if("y".equalsIgnoreCase(line)){            judgedScore();        }    }catch(Exception e){    }} 

热点排行