C语言数组大小排列

来源:百度知道 编辑:UC知道 时间:2024/05/28 10:20:34
a[11]={127,3,6,28,54,68,87,105,162,18};
把这数组里的数据从小到大排列,有什么简单的办法!!谢谢高手写下!

用冒泡法排序:
#define N 11
main()
{
int a[N];
int i,j,t;
for(i=0;i<N;i++)
scanf("%d",&a[i]);
printf("\n");
for(j=0;j<N-1;j++)
for(i=j+1;i<N;i++)
if(a[j]>a[i])
{
t=a[j];
a[j]=a[i];
a[i]=t;
}
printf("The sorted numbers: \n");
for(i=0;i<N;i++)
printf("%d ",a[i]);
printf("\n");
}
自己看看,很简单的算法。

简单的办法是使用库函数中自带的qsort。

1 在程序开始包含头文件: #include <stdlib.h>

2 再输入如下的函数定义:
int cmp ( const void *a , const void *b )
{
return *(int *)a - *(int *)b;
}

3 然后调用qsort:
qsort(a,11,sizeof(int),cmp);

我学的c++,c我还不太会用!能帮你的很少吧!不好意思!c++的我有!
#include<iostream.h>
#define SIZE 11 //这个11可以换成任意数,进行多个数字的比较。
void main()
{
int data[SIZE];
cout<