您的位置:首页 > 其它

使用qsort时遇到的问题

2010-03-03 17:56 183 查看
对int数组排序:

#include<stdio.h>
#include<stdlib.h>
int cmp(const void *a, const void *b)     //int 是作为返回值类型,返回值为真或假,故用int(包括数据double时)
{
return(*(int *)a-*(int *)b);                //如果是double型数组,则int改为double就可以了
}
int main()
{
int k,a[100000];
long i,n;
char b[5];
while(scanf("%ld",&n)!=EOF)
{
for(i=0;i<n;i++)
scanf("%d",&a[i]);
scanf("%s",b);
qsort(a,n,sizeof(a[0]),cmp);   //sizeof(a)-->sizeof(a[0])
scanf("%d",&k);
while(k--)
{
scanf("%d",&i);
printf("%d/n",a[i-1]);
}
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: