• 第九周动手动脑02


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

    设计思想:

    定义一个异常类,如果里面的变量是字符串就输出“输入错误”,输入一个字符串,判断里面的内容,如果是字符,则抛出异常类,如果是整数则判断是否在0~100之间,不是则抛出异常,是则判断为不及格,及格,良优的其中一个,输出结果

    流程图:

    代码:

    import java.util.*;
    public class Test
    {
    public static void main(String args[])
    {
    while(true)
    {
    Scanner input = new Scanner(System.in);
    System.out.println("请输入考试成绩:");
    try
    {
    String s = input.nextLine();

    getnum(s);

    }

    catch (TestException e)
    {
    System.out.println(e.toString());
    }
    }
    }

    private static void getnum(String s) throws TestException

    {

    for (int i = s.length()-1; i >= 0;i--)

    {

    int chr = s.charAt(i);

    if (chr < 48 || chr > 57)

    {

    throw new TestException();

    }

    }

    double num = Double.parseDouble(s);

    if (num < 0 || num> 100)

    {

    throw new TestException();

    }

    if (num>= 0 && num< 60)

    {

    System.out.print("不及格 ");

    }

    else if (num >= 60 && num < 70)

    {

    System.out.print("及格 ");

    }

    else if (num>= 70 && num< 80)

    {

    System.out.print("中 ");

    }

    else if (num >= 80 && num < 90)

    {

    System.out.print("良 ");

    }

    else

    {

    System.out.print("优 ");

    }

    }

    }
    class TestException extends Exception
    {

    String nn=new String();
    TestException()
    {
    nn="输入有误";
    }
    public String toString()
    {
    return nn;
    }
    }

    执行结果:

  • 相关阅读:
    vscode json格式化
    fastjson autoType is not support
    springboot 使用 fastjson序列化
    openfeign 超时到底怎么配
    datax数据同步
    记录接口返回请求时间已过期
    oracle迁移mysql总结
    redistemplate封装
    SCUI学习笔记—【NODE.JS安装】
    原创:uniApp选择题列表:点击不同选择题,答案缓存在本地
  • 原文地址:https://www.cnblogs.com/wj1998/p/7845783.html
Copyright © 2020-2023  润新知