Java绝对值排序

绝对值排序TimeLimit:1SecMemoryLimit:128MBDescription输入n(n<=100)个整数,按照绝对值从大到小排序后输出。题目保证对于每一个测试实例,所有的数的绝对值都不相等。Input输入数据有多组,每组占一行,每行的第一个数字为n,接着是n个整数,n=0表示输入数据的结束,不做处理。Output对于每个测试实例,输出排序后的结果,两个数之间用一个空格隔开。每个测试实例占一行SampleInputCopy33-

大家好,又见面了,我是你们的朋友全栈君。

绝对值排序

Time Limit: 1 Sec Memory Limit: 128 MB

Description

输入n(n<=100)个整数,按照绝对值从大到小排序后输出。题目保证对于每一个测试实例,所有的数的绝对值都不相等。

Input

输入数据有多组,每组占一行,每行的第一个数字为n,接着是n个整数,n=0表示输入数据的结束,不做处理。

Output

对于每个测试实例,输出排序后的结果,两个数之间用一个空格隔开。每个测试实例占一行

Sample Input Copy

3 3 -4 2
4 0 1 2 -3
0

Sample Output Copy

-4 3 2
-3 2 1 0

Java代码:
仅供参考:

import java.util.*;

public class Main { 
   
    public static void main(String[] args) { 
   
        Scanner sc =new Scanner(System.in);
        while(sc.hasNext())
        { 
   
        int n= sc.nextInt();
       // while(sc.hasNext()){ 
   
            if(n==0)  break;
        int []a=new int [n];
         
        for(int i=0;i<a.length;i++)
        { 
   
            a[i]=sc.nextInt();      
        }
         
        for(int i=0;i<a.length-1;i++)
        { 
   
            for(int j=i+1;j<n;j++)
            { 
   
                if(Math.abs(a[i])<Math.abs(a[j]))
                { 
   
                    int x=a[j];
                    a[j]=a[i];
                    a[i]=x;
                }
                
            }
            
        }
         
             for(int j=0;j<a.length;j++)
             { 
                
                 System.out.print(a[j]+" ");
             }
         System.out.println( );//加上这个就会和标准输出一模一样了 O(∩_∩)O
        }
        
     }
}

运行结果:
在这里插入图片描述
c语言代码:

有时间补?つ﹏⊂

先空着,从Java改到C就够了?



版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/126358.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号