【蓝桥杯练习系统】 基础练习 数列排序

来源:互联网 发布:公用摄像头监控软件 编辑:程序博客网 时间:2024/05/19 07:44

“蓝桥杯”全国软件和信息技术专业人才大赛练习系统

数组 排序

  基础练习 数列排序  
时间限制:1.0s   内存限制:512.0MB
 
问题描述
  给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200
输入格式
  第一行为一个整数n。
  第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。
输出格式
  输出一行,按从小到大的顺序输出排序后的数列。
样例输入
5
8 3 6 4 9
样例输出
3 4 6 8 9
 
#include <stdio.h>#include<stdlib.h>int comp ( const void *a, const void *b ) {    return * ( int * ) a - * ( int * )  b; } int main(){    int n,i;    scanf("%d",&n);    int a[201];    for(i=0;i<n;i++)    {        scanf("%d",&a[i]);    }    qsort(a,n,sizeof(a[0]),comp);    for(i=0;i<n;i++)    {        printf("%d ",a[i]);            }    return 0;    }
使用qsort函数,,,排序
——————————————————————————————————————————————————
#include <stdio.h>void sort(int *a,int n){    int i,j,temp,k;    for(i=0;i<n-1;i++)    {        temp=a[i];        for(j=i+1;j<n;j++)        {            if(temp>a[j])            {                k=temp;temp=a[j];a[j]=k;            }        }        a[i]=temp;    }}int main(){    int n,i;    scanf("%d",&n);    int a[201];    for(i=0;i<n;i++)    {        scanf("%d",&a[i]);    }    sort(a,n);    for(i=0;i<n;i++)    {        printf("%d ",a[i]);            }    return 0;    }
自己编的排序函数
0 0