java例题_34 用指正对三个数排序

 1 /*34 【程序 34 三个数排序】
 2 题目:输入 3 个数 a,b,c,按大小顺序输出。
 3 程序分析:利用指针方法。
 4 */
 5
 6 /*分析
 7  * 指针方法的本质是按地址传值,将a,b,c存入数组中,再引用数组中的值排列大小,即利用指针的方法排序
 8  * */
 9
10
11 package homework;
12
13 import java.util.Scanner;
14
15 public class _34 {
16
17     public static void main(String[] args) {
18         // 声明一个大小为3的数组
19         int[] a=new int[3];
20         //从键盘得到3个数,并存入数组中
21         System.out.println("请输入3个整数,并以空格间隔开:");
22         Scanner sc=new Scanner(System.in);   //声明一个扫描器
23         String[] s=sc.nextLine().split(" ");  //将输入的值全部以字符串形式存入字符串数组中
24         for (int i = 0; i < s.length; i++) {
25             a[i]=Integer.parseInt(s[i]);      //将字符串转换为整型存入数组a中
26         }
27         Compare(a);
28         System.out.println("三个数字由大到小排列后为:");
29         for (int i = 0; i < s.length; i++) {
30             System.out.print(a[i]+" ");
31         }
32
33     }
34
35     //比较大小的函数——冒泡排序
36     private static void Compare(int a[]) {
37         //声明一个临时变量
38         int t;
39         //遍历所有的数,将数组中的数由大到小排列
40         for (int i = 0; i < a.length; i++) {   //控制比较的进度
41             for (int j = 0; j < a.length-1; j++) {  //控制所有的数字相邻两个数字的比较
42                 if (a[j]<a[j+1]) {   //如果前面的数小于后面的数,交换位置
43                     t=a[j];
44                     a[j]=a[j+1];
45                     a[j+1]=t;
46                 }
47             }
48         }
49     }
50 }

原文地址:https://www.cnblogs.com/scwyqin/p/12333756.html

时间: 2024-11-15 04:57:51

java例题_34 用指正对三个数排序的相关文章

三个数排序

/** 最经典的C语言算法!*/public class 第十五题三个数排序 { public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.print("请输入三个整数: "); int a = in.nextInt(); int b = in.nextInt(); int c = in.nextInt(); int temp = 0; //首先如果 a > b

第六天(质数和三个数排序)

1.质数 int b = 0; for (int i = 1; i <= 100;i++ ) { int a = 0; for (int l = 1; l <= i;l++ ) { if(i%l==0) { a++; } } if(a==2) { b += i; Console.Write(i+"\t"); } } Console.Write("总和是:"+b); 2.三个数由大到小排序 Console.Write("请输入第一个数字:&quo

三个数排序(伪算法)

第一个是我自己画的,第二个是我通过老师说的思想画的.其实两个主要的思想算法都是一样的但我的看起来更乱一点不好理解一点,想想老师研究计算机这么我年就是和我们的不一样更简节,我还有很多要像老师学习的.

(2019.3.15)if语句;从键盘读入3个数;三个数进行大小排序

import java.util.Scanner;class TestIf3{    public static void main(String[] args){        //1.从键盘获取三个数        Scanner s = new Scanner(System.in);        System.out.println("请输入第一个数:");        int num1 = s.nextInt();        System.out.println(&qu

三个数从小到大排序—南阳acm

描述: 现在要写一个程序,实现给三个数排序的功能 输入 输入三个正整数 输出 给输入的三个正整数排序 样例输入 20 7 33 样例输出 7 20 33 解题思路是先找出最大和最小的数,再找出中间数,并分步输出,下面是代码 #include<stdio.h>  main() {   int a,b,c,m,n;    scanf("%d%d%d",&a,&b,&c);     m=a>b?a:b;m=m>c?m:c;//找出最大值    

三个数从小到大排序

描述 现在要写一个程序,实现给三个数排序的功能 输入 输入三个正整数 输出 给输入的三个正整数排序 样例输入 20 7 33 样例输出 7 20 33 1 #include <stdio.h> 2 3 int main(){ 4 int a; 5 int b; 6 int c; 7 int temp; 8 9 scanf("%d%d%d",&a,&b,&c); 10 11 if(a>b){ 12 temp=a; 13 a=b; 14 b=tem

41.三个数从小到大排序

描述 现在要写一个程序,实现给三个数排序的功能 输入 输入三个正整数 输出 给输入的三个正整数排序 样例输入 20 7 33 样例输出 7 20 33 1 #include<stdio.h> 2 int main( ) { 3 int a, b, c, t; 4 scanf("%d%d%d", &a, &b, &c); 5 if(a > b) {t = a; a = b; b = t;} 6 if(a > c) {t = a; a = c

【LeetCode-面试算法经典-Java实现】【015-3 Sum(三个数的和)】

[015-3 Sum(三个数的和)] [LeetCode-面试算法经典-Java实现][所有题目目录索引] 原题 Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero. Note: Elements in a triplet (a,b,c) m

【LeetCode-面试算法经典-Java实现】【016-3 Sum Closest(最接近的三个数的和)】

[016-3 Sum Closest(最接近的三个数的和)] [LeetCode-面试算法经典-Java实现][所有题目目录索引] 原题 Given an array S of n integers, find three integers in S such that the sum is closest to a given number, target. Return the sum of the three integers. You may assume that each input