一、题目1
输入5个数,代表学生成绩,计算其平均成绩。当输入值为负数或大于100的数时,通过自定义异常处理并提示。
二、代码
Test.java
/* * 创建一个自定义异常类并继承exception父类,在测试类中创建求平均值的方法并声明异常, * 最后在主方法中捕捉异常 */ package d; import java.util.Scanner; class MyException extends Exception{ private double number; MyException(double a){ number=a; } public String toString(){//自定义异常的描述信息 return "自定义异常["+number+"超出0-100的范围]"; } } public class Test { static void aver()throws MyException{ double a; double sum=0; Scanner reader=new Scanner(System.in); System.out.println("请输入5个数:"); for(int i=0;i<5;i++){ a=reader.nextDouble(); sum+=a; if(a<0||a>100){ throw new MyException(a);//抛出自定义异常MyException } } System.out.println("平均数为:"+sum/5); } public static void main(String[] args) { try{ aver(); }catch(MyException e){ //捕获自定义异常MyException System.out.println("捕获"+e); } } }
三、运行结果
一、题目2
Lisa正在编写一个能够计算三科——数学、英语、程序设计基础——平均成绩(平均成绩=三科总成绩/3)和智育成绩(智育成绩=三科总成绩*0.7)的程序。