• Java 入门练习(6 - 10)


    JAVA6 判断体重指数

    描述

    体重指数 = 体重 (kg) / ( 身高 (m) × 身高 (m) ),小于18.5属于偏瘦,介于18.5和20.9之间(左闭右开)属于苗条,介于20.9和24.9之间(左闭右闭)属于适中,超过24.9属于偏胖。下面由你来编写一段逻辑,算出输入了身高和体重的用户的体重指数,并返回他们的身材状态。(体重指数请使用double类型)

    输入描述:

    用户的身高(m)和用户的体重(kg)

    输出描述:

    体重指数代表的用户身材状态

    示例1

    输入:

    1.75 62.5
    
    • 1

    输出:

    苗条
    
    • 1

    示例2

    输入:

    1.5 40
    
    • 1

    输出:

    偏瘦
    
    • 1

    示例3

    输入:

    1.85 80
    
    • 1

    输出:

    适中
    
    • 1

    示例4

    输入:

    2 100
    
    • 1

    输出:

    偏胖
    
    • 1

    解答

    首先计算出体重指数 bim = weight / height / height,然后再用条件语句找出对应区间即可。

    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            double height = scanner.nextDouble();
            double weight = scanner.nextDouble();
    
            double ibm = weight / height / height;
    
            if (ibm > 24.9) {
                System.out.print("偏胖");
            } else if (ibm >= 20.9) {
                System.out.print("适中");
            } else if (ibm >= 18.5) {
                System.out.print("苗条");
            } else {
                System.out.print("偏瘦");
            }
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    JAVA7 判断学生成绩等级

    描述

    现有如下成绩等级A,B,C,D。其中A代表优秀,B代表良好,C代表及格,D代表不及格。现在请你来为学生的成绩进行分级,如果用户输入错误则输出未知等级。

    输入描述

    成绩等级对应的中文表述

    输出描述

    优秀,良好,及格,不及格,未知等级

    示例1

    输入:

    A
    
    • 1

    输出:

    优秀
    
    • 1

    示例2

    输入:

    B
    
    • 1

    输出:

    良好
    
    • 1

    示例3

    输入:

    C
    
    • 1

    输出:

    及格
    
    • 1

    示例4

    输入:

    D
    
    • 1

    输出:

    不及格
    
    • 1

    示例5

    输入:

    E
    
    • 1

    输出:

    未知等级
    
    • 1

    解答

    可以使用 switch 来匹配对应成绩等级,但是需要注意的是 switch 用来 String 需要 Java 8 及之后才行,否则可能会出错。

    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            String grade = scanner.next();
            switch (grade) {
                case "A":
                    System.out.println("优秀");
                    break;
                case "B":
                    System.out.println("良好");
                    break;
                case "C":
                    System.out.println("及格");
                    break;
                case "D":
                    System.out.println("不及格");
                    break;
                default:
                    System.out.println("未知等级");
                    break;
            }
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25

    JAVA8 邮箱验证

    描述

    请根据给出的正则表达式来验证邮箱格式是否合法,如果用户输入的格式合法则输出「邮箱格式合法」,否则输出「邮箱格式不合法」。

    输入描述

    任意字符串

    输出描述

    根据输入的邮箱格式判断其合法于不合法,若输入字符串符合邮箱格式则输出邮箱格式合法,否则输出邮箱格式不合法

    示例1

    输入:

    123123@nowcoder.com
    
    • 1

    输出:

    邮箱格式合法
    
    • 1

    示例2

    输入:

    123123
    
    • 1

    输出:

    邮箱格式不合法
    
    • 1

    解答

    利用 Stringmatches() 方法来讲输入的字符串和正则表达式进行匹配,然后根据匹配后的结果输出对应结果。

    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
    
            Scanner scanner = new Scanner(System.in);
            String str = scanner.next();
            String emailMatcher = "[a-zA-Z0-9]+@[a-zA-Z0-9]+\\.[a-zA-Z0-9]+";
    
            if (str.matches(emailMatcher)) {
                System.out.println("邮箱格式合法");
            } else {
                System.out.println("邮箱格式不合法");
            }
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    JAVA9 数列求和

    描述

    有数列为:9,99,999,…,9999999999。要求使用程序计算此数列的和,并在控制台输出结果。(请尝试使用循环的方式生成这个数列并同时在循环中求和)

    输入描述

    输出描述

    将该数列的和直接输出

    解答

    假设数列第一个数为 a 1 = 9 a_1 = 9 a1=9,那么后续递推公式 a i = a i − 1 ∗ 10 + 9 a_i = a_{i-1} * 10 + 9 ai=ai110+9,然后利用循环求和即可。

    public class Main {
        public static void main(String[] args) {
            long sum = 0;
            long num = 9;
            for (int i = 0; i < 10; i++) {
                sum += num;
                num = num * 10 + 9;
            }
            System.out.println(sum);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    JAVA10 统计输入正数个数

    描述

    控制台输入整数,请设计一个死循环,当用户输入非正数时停止输入。请给出用户输入的正整数个数(默认输入个数不超过 2147483647)

    输入描述

    若干整数,整数之间用空格隔开

    输出描述

    控制台输入的正整数个数

    示例1

    输入:

    1 2 3 4 5 6 7 0
    
    • 1

    输出:

    7
    
    • 1

    解答

    要设计一个死循环,那么可以使用 while 语句,此外,要统计正整数个数,则利用 count 进行叠加即可。

    import java.util.*;
    
    public class Main {
        public static void main(String[] args) {
            int count = 0;
            Scanner scanner = new Scanner(System.in);
    
            while (scanner.nextInt() > 0) {
                count++;
            }
            System.out.println(count);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
  • 相关阅读:
    从哪些方面做好电商系统的网站建设?
    HOT100打卡—day11—【贪心】—最新9.5(剩3题)
    JVM类加载机制
    Go基础(待更新)
    猫头虎分享 2024 最新版 Navicat 17 下载与安装步骤及演示 (图文版)
    2022年软件测试人员必读的经典书籍推荐(附电子版)
    业务数据分析-Excel数据透视表(四)
    【一等奖方案】大规模金融图数据中异常风险行为模式挖掘赛题「NUFE」解题思路
    java 企业工程管理系统软件源码 自主研发 工程行业适用
    如何批量修改图片宽高尺寸
  • 原文地址:https://blog.csdn.net/github_39655029/article/details/125492959