码迷,mamicode.com
首页 > 其他好文 > 详细

动态内存分配输入整数并对其排序输出

时间:2014-09-14 10:05:56      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   io   ar   for   div   sp   log   

#include<stdio.h>
#include<stdlib.h>

int 
compare_integers(void const *a, void const *b)
{
    register int const *pa = a;
    register int const *pb = b;
    
    return *pa > *pb ? 1 :(*pa < *pb ? -1 : 0);
}

int
main(void)
{
    int *array;
    int n_values;
    int i;
    
    printf("How many values are there?");
    if(scanf("%d", &n_values) != 1 || n_values <=0){
        printf("Illegal number of values.\n");
        exit(EXIT_FAILURE);
    }
    
    array = malloc(n_values * sizeof(int));
    if(array == NULL){
        printf("Can‘t get memory for that many values.\n");
        exit(EXIT_FAILURE);
    }    
    
    for(i=0; i<n_values; i++){
        printf("?");
        if(scanf("%d", array+i) != 1){
            printf("Error reading value #%d\n", i);
            free(array);
            exit(EXIT_FAILURE);
        }
    }
    
    qsort(array, n_values, sizeof(int), compare_integers);
    
    
    for(i=0;i<n_values;i++){
        printf("%d\n", array[i]);
    }
    
    return EXIT_SUCCESS;
}

 

动态内存分配输入整数并对其排序输出

标签:style   blog   color   io   ar   for   div   sp   log   

原文地址:http://www.cnblogs.com/yshyee/p/3970686.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!