Java程序中比较三个数的大小,并且对他们进行排序,从小到大输出

一、任务目标

1.能接收用户从键盘输入的三个数字(整数或小数);

2.使用if循环嵌套语句实现;

3.比较三个数的大小,并且对他们进行排序,从小到大输出。

二、任务实现

1.使用scanner实现接收用户从键盘输入的数据;

2.定义三个变量num1、num2、num3用于接收三个数据;

3.再定义三个变量max、mid、min用于接收最终排序结果。

三、实现思路

1.导入scanner,接收用户键盘输入的数字:

import java.util.Scanner;

public class IfProgram4 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入三个整数:");

2.如果比较整数大小,则定义三个整型变量int num1、num2、num3,再定义三个整型变量max、mid、min;如果比较小数大小,则定义三个浮点型变量double num1、num2、num3,再定义三个浮点型变量double max、mid、min用于输出结果:

        int num1 = scanner.nextInt();
		int num2 = scanner.nextInt();
		int num3 = scanner.nextInt();
		
		int max,mid,min;
        double num1 = scanner.nextDouble();
		double num2 = scanner.nextDouble();
		double num3 = scanner.nextDouble();
		
		double max,mid,min;

3.使用if语句比较三个数的大小:假设num1<=num2并且num1<=num3,那么三个数中最小的数min=num1;在该条件下,使用if嵌套比较num2和num3的大小:如果num2<=num3,那么max=num3,mid=mun2:

if (num1 <= num2 && num1 <= num3){
			min = num1;
			if (num2 <= num3){
				max = num3;
				mid = num2;
			}else{
				max = num2;
				mid = num3;
			}
}

4.同理使用else if再假设num2<=num1并且num2<=num3,那么三个数中最小的数max=num2;在该条件下,使用if嵌套比较num1和num3的大小:如果num1<=num3,那么max=num3,mid=mun1:

else if(num2 <=num1 && num2 <=num3){
			min = num2;
			if (num1 <= num3){
				max = num3;
				mid = num1;
			}else{
				max = num1;
				mid = num3;
			}
}

5.除去上述两种情况,那么min=num3,再里面嵌套if条件语句判断num1和num2的大小关系:

else{
			min = num3;
			if (num1 <= num2){
				max = num2;
				mid = num1;
			}else{
				max = num1;
				mid = num2;
			}
}

6.最后,输出结果:

System.out.print("三个数的大小顺序为"+min+","+mid+","+max);

三、最终结果

1.完整代码:

import java.util.Scanner;

public class IfProgram4 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入三个整数:");
		
		int num1 = scanner.nextInt();
		int num2 = scanner.nextInt();
		int num3 = scanner.nextInt();
		
		int max,mid,min;
		
		if (num1 <= num2 && num1 <= num3){
			min = num1;
			if (num2 <= num3){
				max = num3;
				mid = num2;
			}else{
				max = num2;
				mid = num3;
			}
		}else if(num2 <=num1 && num2 <=num3){
			min = num2;
			if (num1 <= num3){
				max = num3;
				mid = num1;
			}else{
				max = num1;
				mid = num3;
			}
		}else{
			min = num3;
			if (num1 <= num2){
				max = num2;
				mid = num1;
			}else{
				max = num1;
				mid = num2;
			}
		}
		System.out.print("三个数的大小顺序为"+min+","+mid+","+max);
	}
}	

如果是比较小数大小关系,定义变量和定义输出结果时,int改为double即可。

2.运行结果:

四、注意事项

1.由于需要嵌套多层if语句,if和else要一一对应,避免判断结果不准确;

2.注意使用if多层嵌套时大括号的使用,“{”和“}”一一对应,避免语法错误;

3.要思路逻辑清晰,避免代码逻辑错乱,多写或漏写判断条件语句。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值