要求:编写一个程序,此程序在运行时要求用户输入一个 整数,代表某门课的考试成绩,程序接着给出“不及格”、“及格”、“中”、“良”、“优”的结论。
要求程序必须具备足够的健壮性,不管用户输入什 么样的内容,都不会崩溃。

package tryo6;

import java.util.*;
class MyException extends Exception
{
MyException()
{ }
}
class Pan
{
double fen;
void setGrade()
{
Scanner shu=new Scanner(System.in);
try
{
try
{
fen=shu.nextDouble();
if(fen<0||fen>100) throw new MyException();
}
catch(MyException e)//范围情况
{
System.out.println("超出范围,请重新输入:");
setGrade();
} }
catch(Exception e)//其它情况
{
System.out.println("不能含有字符,请重新输入");
setGrade();
}
}
void showGrade()
{
if(fen>0&&fen<60) System.out.println("不及格");
if(fen>60&&fen<=70) System.out.println("及格");
if(fen>70&&fen<=80) System.out.println("中");
if(fen>80&&fen<=90) System.out.println("良");
if(fen>90&&fen<=100) System.out.println("优");
}
}
public class grate {
public static void main(String args[])
{
System.out.print("请输入0~100之间的分数:");
Pan ru=new Pan();
ru.setGrade();
ru.showGrade();
}
}

结果:

请输入0~100之间的分数:asd
不能含有字符,请重新输入
120
超出范围,请重新输入:
79

最新文章

  1. 字符串专题:map POJ 1002
  2. mysql查看锁表情况
  3. CentOS 6.4 快速安装Nginx笔记
  4. f2fs解析(三)NAT中如何区分inode和其他dnode
  5. nslookup基础用法
  6. 使用Jenkins搭建持续集成服务
  7. c# is和as的区别
  8. 菜鸟的MySQL学习笔记(一)
  9. 五子棋Web版的开发(一)---搭建IDEA SSH环境
  10. 腾讯Web工程师的前端书单
  11. Centos7配置MongoDB以及端口修改
  12. 安装redis服务
  13. 关于用户输入恶意js
  14. Java面试题 corejava(一)
  15. 贪心算法——字典序最小问题,Saruman‘s Army
  16. 【Unity Shader】五、Shader纹理映射,及纹理的缩放和偏移
  17. RAP接口管理系统import进eclipse进行二次开发
  18. 【Python】Java程序员学习Python(八)— 基本类型的基本运算
  19. HDU--Elevator(水题)
  20. 深入辨析jvm内存区域

热门文章

  1. uva 1584.Circular Sequence
  2. 【xml】利用OpenCV解析
  3. IOS - UIViewController的生命周期
  4. google关于ssh key的解释(转)转的google的wiki的
  5. Jquery的普通事件和on的委托事件
  6. 报错 - Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lex failed with exit code 1
  7. Android - 控件android:ems属性
  8. Shell编程基础教程6--shell函数
  9. Shell编程基础教程2--变量和运算符
  10. 【转载】 Python 方法参数 * 和 **