「Java案例」输出最大的数及其出现的次数

案例解析

基础实现案例

编写一个程序,输入1个整数,如果该整数不是0,则继续输入,直到输入0时为止。查找这一组数中最大的数,并输出最大的数出现的次数。如果输入的第一个数为0,就输出:“Only 0 is inputed”。

# 源文件保存为“FindMaxAndCount.java”
import java.util.Scanner;

public class FindMaxAndCount {
   
   
    public static void main(String[] args) {
   
   
        Scanner scanner = new Scanner(System.in);
        
        System.out.print("请输入整数(输入0结束):");
        int firstNum = scanner.nextInt();
        
        if (firstNum == 0) {
   
   
            System.out.println("Only 0 is inputed");
            return;
        }
        
        int max = firstNum;
        int count = 1;
        
        while (true) {
   
   
            int num = scanner.nextInt();
            if (num == 0) {
   
   
                break;
            }
            
            if (num > max) {
   
   
                max = num;
                count = 1;
            } else if (num == max) {
   
   
                count++;
            }
        }
        
        System.out.println("最大的数是: " + max);
        System.out.println("它出现的次数是: " + count);
    }
}

运行结果
直接输入数字0

请输入整数(输入0结束):0
Only 0 is inputed

输入一系列数字,以0结束

请输入整数(输入0结束):5
4
5
2
0
最大的数是: 5
它出现的次数是: 2

代码解析:

  • 先用Scanner获取第一个输入的数字
  • 如果第一个数就是0,直接输出提示信息并结束程序
  • 初始化max为第一个数,count初始化为1
  • 进入无限循环,不断读取输入的数字
  • 遇到0就跳出循环
  • 每次遇到比当前max更大的数,就更新max并重置count
  • 遇到和max相等的数,count加1
  • 最后输出结果

这个程序能正确处理各种情况,包括所有数都相同、第一个数就是最大的、或者后面出现更大的数等情况。

找出最小数及其出现次数

稍微修改一下就能实现找最小数的功能:

# 源文件保存为“FindMinAndCount.java”
import java.util.Scanner;

public class FindMinAndCount {
   
   
    public static void main(String[] args) {
   
   
        Scanner scanner = new Scanner(System.in);
        
        System.out.print("请输入整数(输入0结束):");
        int firstNum = scanner.nextInt()<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜晚回家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值