Java - 自定义异常(尚学堂第六章异常机制作业计算平均数)
编写一个计算N个学生分数平均分的程序。程序应该提示用户输入N的值,如何必须输入所有N个学生分数。如果用户输入的分数是一个负数,则应该抛出一个异常并捕获,提示“分数必须是正数或者0”。并提示用户再次输入该分数。
import java.util.Scanner;
public class TestInputScore {
public static void main(String[] args) {
@SuppressWarnings("resource")
Scanner input = new Scanner(System.in);
System.out.println("要计算几个学生分数的平均数?");
float n = input.nextFloat();
System.out.println("请输入:" + (int)n + "个学生分数");
float sum = 0;
float tmp;
for(int i=0; i<n;) {
tmp = input.nextFloat();
if(tmp<0) {
try {
throw new InputScoreException("分数必须是正数或者0");
}catch(Exception e) {
e.printStackTrace();
System.out.println();
System.out.println("请重新输入分数");
continue;
}
}else {
sum += tmp;
i++;
}
}
System.out.print("学生分数平均分为:" + sum/n);
}
}
@SuppressWarnings("serial")
class InputScoreException extends Exception{
public InputScoreException() {
super();
// TODO Auto-generated constructor stub
}
public InputScoreException(String message) {
super(message);
// TODO Auto-generated constructor stub
}
}
Java - 自定义异常(尚学堂第六章异常机制作业计算平均数)的更多相关文章
- Java - 自定义异常(尚学堂第六章异常机制作业判断三角形)
写一个方法void isTriangle(int a,int b,int c),判断三个参数是否能构成一个三角形, 如果不能则抛出异常IllegalArgumentException,显示异常信息 “ ...
- matlab第六章数据分析与多项式计算
MATLAB练习 第六章数据分析与多项式计算 1.max和min 1.分别求矩阵A中各列和各行元素中的最大值.max和min的用法一样 % [例6.1]分别求矩阵中各列和各行元素中的最大值. A=[5 ...
- 《Java大学教程》—第15章 异常
自测题:1. 什么是异常?P357异常是在程序生命周期内出现的事件,它会导致程序行为不可靠. 2. 已检查异常和未检查异常的区别是什么?P359在编译器允许程序被编译通过前,要求程序员必须编写代 ...
- 黑马程序员——【Java基础】——面向对象(二)异常机制、包(Package)
---------- android培训.java培训.期待与您交流! ---------- 一.异常机制 (一)异常概述 1.异常:就是程序在运行时出现不正常情况. 2.异常类:程序在运行时,出现的 ...
- 高淇java300集异常机制作业
1.以下关于异常的代码的执行结果是(C ).(选择一项) 1 2 3 4 5 6 7 8 9 10 11 12 public class Test { public static void m ...
- java第六章异常
异常: 程序运行一旦出现异常程序就会立刻结束不在向下运行 处理异常:在程序执行代码时,万一发生了异常,程序会按照处理的方法对一场进行处理办法,程序将继续执行 try-catch-finally-thr ...
- Java - 二分法查找(尚学堂第七章数组)
import java.util.Arrays; public class TestBinarySearch { public static void main(String[] args) { in ...
- Java - 冒泡排序的优化算法(尚学堂第七章数组)
import java.util.Arrays; public class TestBubbleSort2 { public static void main(String[] args) { int ...
- Java - 冒泡排序的基础算法(尚学堂第七章数组)
/** * 冒泡排序的基础算法 */ import java.util.Arrays; public class TestBubbleSort1 { public static void main(S ...
随机推荐
- git reset --soft --hard 区别
[转]git reset 之 soft mixed hard选项的区别 (2014-09-09 16:54:06) 转载▼ 标签: git 分类: Linux 译注:为了避免丢失本地的修改以及orig ...
- iPhone Development – core data relationships tutorial part 1
I’m going to start a short series on Core Data relationships and maybe throw in some general Core Da ...
- Smart3d 近景摄影测量与航空摄影测量
实例:http://blog.sina.com.cn/s/blog_8f68d2350102wef4.html ContextCapture(Smart3d):https://www.bentley. ...
- CAD&CG GDC 2018大会论文录用名单
Section 1 增强现实与图形学: 报告时间:2018-8-25 14:00-15:30 报告地点:会议室1 P000009 基于增强现实的产品质量信息传递方法 P000104 重彩画的风格转移 ...
- Android-ActivityManager 退出整个应用
在做Android APP 过程中,有退出整个Project的功能,以下就是接受退出整个应用的操作: ActivityManager是用来管理记录每一个Activity,最后统一用来退出结束: pub ...
- velocity的日志解决问题
问题描述:velocity使用时,添加了一个非自己想要的日志文件,因此在velocity的配置中需要添加logger. 解决: velocity.properties添加log配置: runtime. ...
- [LeetCode 题解]:Gas Station
前言 [LeetCode 题解]系列传送门: http://www.cnblogs.com/double-win/category/573499.html 1.题目描述 There are ...
- VirtualBox 安装Centos7 无法上网 ping不同的解决方法
进入目录: cd /etc/sysconfig/network-scripts/ 用ls命令查看网卡配置文件名(在CENTOS7中网卡名貌似变成了随机数字,所以每台机器的网卡名并不相同) 编辑网卡配置 ...
- [respberry pi3][suse] 配置docker
[respberry pi3][suse] 配置docker arm64 suse上总的软件还是比较少的,特别是对32bit的一些支持,比较熟悉ubuntu,但是不能raspberry pi3没有64 ...
- ftp服务器PDF文件在线查看
曾做过电厂的项目,有一些功能需要和甲方的厂家对接,其中就有需要实现甲方ftp服务器上的PDF.JPG等文件的查看功能.就PDF文件为例,这里使用的是pdf插件,需要将参数通过链接发给ftp,获取到PD ...