Java-三个数获取第二大值、四个数获取第二大值,多个数获取第二大值

本方法不使用排序、数组,获取输入数中第二大的值,代码如下:

public class GetSecond {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		// 存储输入的值
		int input;
		// 存储最大值,给max的初始值是integer的最小值,所以输入的第一个数都可以赋值给max
		int max = Integer.MIN_VALUE; 
		// 存储第二大值,给max的初始值是integer的最小值,所以输入的第一个数都可以赋值给second
		int second = Integer.MIN_VALUE;
		int count = 1;
		// count控制输入几个数,如果是三个数获取第二大值,就 <=3,如果是四个数获取第二大值,就 <= 4
		while (count <= 3) {
			input  = scanner.nextInt();
			// 如果输入的数比 当前最大值 max 大,就把 max 值给 second,再把输入值给 max
			if (input > max) {
				second = max;
				max = input;
			}
			// 如果输入的数比 当前最大值 max 小 并且 比第二大值 second 大,就把输入值 给 second
			if (input < max && input > second) {
				second = input;
			}
			count++;
		}
		System.out.println("第二大的值是:" + second);
	}
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值