zoukankan      html  css  js  c++  java
  • (HDOJ 2020)绝对值排序

    绝对值排序

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

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

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

    Sample Input
    3 3 -4 2 
    4 0 1 2 -3 
    0
     

    Sample Output
    -4 3 2 
    -3 2 1 0
     

     AC code:

    #include<stdio.h>
    #include
    <math.h>
    #include
    <ctype.h>
    #include
    <string.h>
    #include
    <stdlib.h>
    #define N 101

    int cmp(const void *a,const void *b)
    {
         
    return (abs(*(int*)b)-abs(*(int*)a));
    }

    int main()
    {
         
    int n,m,i=0,j,t;
         
    int a[N];
         
    while((scanf("%d",&n)!=EOF)&&n)
         {
              t
    =n;
              
    while(n--)
              {
                 scanf(
    "%d",&m);
                 a[i
    ++]=m;
              }
              qsort(a,t,
    sizeof(a[0]),cmp);
              
    for(j=0; j<t; j++)
              {
                 
    if(j!=t-1)
                 {
                    printf(
    "%d ",a[j]);
                 }
                 
    else
                 {
                    printf(
    "%d\n",a[j]);
                 }
              }
              memset(a,
    0,sizeof(a));
              i
    =0;
          }
         
    return 0;

    } 

    作者:cpoint
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
  • 相关阅读:
    20165310_Exp2实验二《Java面向对象程序设计》
    20165310java_teamExp1_week1
    20165310java_blog_week7
    20165310java_blog_week6
    20165310 java_blog_week5
    20165211 获奖感想及java课程总结
    实验四 Android程序设计
    实验三 敏捷开发与XP实践
    第十周课下作业(补做)
    课下作业(补做)
  • 原文地址:https://www.cnblogs.com/cpoint/p/2015354.html
Copyright © 2011-2022 走看看