要求用户输入第二大和最大数字的java程序 [英] java program that asks user to inputs second largest and largest numbers

查看:102
本文介绍了要求用户输入第二大和最大数字的java程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

//java program that asks user to input a number and print the 1st and 2nd largest numbers

import java.util.Scanner;

public class twolargestnum
{
    public static void main(String args[])
    {
        Scanner input=new Scanner(System.in);

        int largest_2=0; //initializes second number
        int largest=0; //initializes first number
        int number;
        int counter=0;//initializes counter



        while(counter<10)
        {
            System.out.println("enter the number:");
            number=input.nextInt();//prompts user

            if(largest<number){
            largest=number;//stores number to largest
            largest_2=largest;}//stores largest to second largest or         largest_2
            else{

            if(largest_2<number &&largest>largest_2)
            largest_2=number; //stores second largest to number


            }
            counter=counter+1;//counts number input 10 times
    }

        System.out.println("The first largest number is "         +largest);//displays largest number inputed
    System.out.println("The second largest number is " +largest_2);//displays second largest number inputed

     }

}

输出

enter the number:
99
enter the number:
88
enter the number:
77
enter the number:
66
enter the number:
55
enter the number:
44
enter the number:
33
enter the number:
22
enter the number:
11
enter the number:
10
The first largest number is 99
The second largest number is 99 

如你所见,程序显示第二大数字为99而不是88.我是什么做错了?

As you can see , the program displays the second largest number as 99 instead of 88. what am I doing wrong?

推荐答案

您需要将 largest_2 更改为最大在您更新最大之前。

You need to change the largest_2 to largest BEFORE you update largest.

这篇关于要求用户输入第二大和最大数字的java程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆