java 编写一个程序,输入3个整数,然后程序将对这三个整数按照从大到小进行排列

问题描述
  编写一个程序,输入3个整数,然后程序将对这三个整数按照从大到小进行排列。
  输入格式:输入只有一行,即三个整数,中间用空格隔开。
  输出格式:输出只有一行,即排序后的结果。
  输入输出样例
样例输入
9 2 30
样例输出
30 9 2

怎么输入一行数据(9 2 30),通过空格区分,赋值给长度为3的整形数组?

输入三个数你可以这样
Scanner in=new Scanner(System.in);
int a=in.nextInt();
Scanner in=new Scanner(System.in);
int b=in.nextInt();
Scanner in=new Scanner(System.in);
int c=in.nextInt();
然后对三个数进行比较。
int tmp=0;
if(a<b){
tmp=a;

a=b;

b=tmp;

}
if(a<c){
tmp=a;

a=c;

c=tmp;
}
if(b<c){
tmp=b;

b=c;

c=tmp;
}
System.out.println(a+" "+b+" "+c);
这就可以了,自己想想动动脑子才能灵活运用,如果只是给你代码,你只会复制粘贴。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2019-11-11

可以实现比较器Comparator来定制排序方案,同时使用Colletions.sort的方式进行排序,代码如下:

public void sortDesc(List<Long> s){
Collections.sort(s, new Comparator<Long>() {
public int compare(Long o1, Long o2) {
Long result = o2 - o1;
return result.intValue();
}
});
s.forEach(item->{
System.out.print(item +" ");
});
}

同时常用的比较排序算法主要有:冒泡排序,选择排序,插入排序,归并排序,堆排序,快速排序等。

java的冒泡排序实现如下:

public static void bubbleSort(int []arr) {        for(int i =0;i<arr.length-1;i++) {            for(int j=0;j<arr.length-i-1;j++) {//-1为了防止溢出                if(arr[j]>arr[j+1]) {                    int temp = arr[j];                                         arr[j]=arr[j+1];                                         arr[j+1]=temp;            }            }            }    }

还有非比较排序,时间复杂度可以达到O(n),主要有:计数排序,基数排序,桶排序等。

本回答被网友采纳

java 编写一个程序,输入3个整数,然后程序将对这三个整数按照从大到小...
int c=in.nextInt();然后对三个数进行比较。int tmp=0;if(a<b){ tmp=a;a=b;b=tmp;} if(a<c){ tmp=a;a=c;c=tmp;} if(b<c){ tmp=b;b=c;c=tmp;} System.out.println(a+" "+b+" "+c);这就可以了,自己想想动动脑子才能灵活运用,如果只是给你代码,你只会复制粘贴。

java 编写一个程序,输入3个整数,然后程序将对这三个整数按照从大到小...
java的冒泡排序实现如下:public static void bubbleSort(int []arr) { for(int i =0;i<arr.length-1;i++) { for(int j=0;j<arr.length-i-1;j++) {\/\/-1为了防止溢出 if(arr[j]>arr[j+1]) { int temp = arr[j]; arr[j]=arr[j+1]; arr[...

对输入的任意三个数 a、b 和 c,按从小到大的顺序输出,用流程图表示该算...
输入三个整数a,b,c,请把这三个数由小到大输出。1.程序分析:我们想办法把最小的数放到a上,先将a与b进行比较,如果a>b则将a与b的值进行交换,然后再用a与c进行比较,如果a>c则将a与c的值进行交换,这样能使a最小。2.程序源代码:main(){ int a,b,c,t;scanf("%d,%d,%d",&a&b&...

...输入3个数,求最大值,求最小值,求从大到小进行排列!!在线等!_百度知...
import java.util.Scanner;\/** * 从键盘输入n个整数,求着n个数的最大值 * @author young * *\/public class Exam {public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.println("输入一个整数n确定数组大小:");int n = input.nextInt();int[]...

用C语言描述对于输入的任意三个整数,将它们按从小到大的顺序输出?_百 ...
1、输入三个整数x,y,z,请把这三个数由小到大输出。2、所需要的开头代码,#include "stdio.h"#include "conio.h",预处理命令,表示程序包含conio.h库文件conio.h库文件定义了通过控制台进行数据输入和数据输出的函数。3、下面这个代码是关键 int x,y,z,t; scanf("%d%d%d",&x,&y,&z)...

有3个数a、b、c,要求按从大到小顺序把它们输出.用自然语言、传统流程...
if(b>c){t=b; b=c; c=t;} \/\/b与c若大小顺序不对,就交换位置;到此c肯定是最大 printf("这三个数从小到大排列是:%d %d %d\\n",a,b,c);getch();return 0;} 例如:实现思路,用伪代码写出解此题的算法:1、if a>b 将a和b对换 (a是a,b中的小者)2、if a>c 将a和c...

java怎么让数组的数字从大到小排序?
将数字从大到小排序的方法:例如简一点的冒泡排序,将第一个数字和后面的数字逐个比较大小,如果小于,则互换位置,大于则不动。此时,第一个数为数组中的最大数。然后再将第二个数与后面的数逐个比较,以次类推。示例代码如下: public class Test { public static void main(String[] args) { ...

程序设计中的指令是什么?有哪几种?
它同样需要编程者将每一步具体的操作用命令的形式写出来。汇编程序通常由三部分组成:指令、伪指令和宏指令。汇编程序的每一句指令只能对应实际操作过程中的一个很细微的动作,例如移动、自增,因此汇编源程序一般比较冗长、复杂、容易出错,而且使用汇编语言编程需要有更多的计算机专业知识,但汇编语言的优点也是显而易见的...

给定N个不同的整数,要求对这N个整数按如下规则排序并输出。
解释如下:对于这个问题,我们的目标是对给定的N个不同的整数进行排序。排序的基本思想是将这些整数按照从小到大的顺序重新排列。为了实现这一目标,我们可以采用多种排序算法。其中,常见的排序算法包括冒泡排序、选择排序、插入排序和快速排序等。这些算法都有各自的特点和适用场景。例如,冒泡排序和选择排序...

4、设计一个函数,当给定一个整数后,能得到该数的补码(应考虑该整数是正...
3.了解C语言中数据类型的意义[实验内容和步骤]1. 用printf函数来输入表达式运行结果 2. 程序试图计算由键盘输入的任意两个整数的平均值:[问题讨论]1.“=”和“==”有什么区别?2.“&”和“&&”、“|”和“||”有什么区别?3. 如何正确地选用数据类型?实验三 选择结构[实验目的]1、了解条件与程序流程的...

相似回答