gpt4 book ai didi

c - 如何正确排序数组?

转载 作者:太空宇宙 更新时间:2023-11-04 03:56:43 25 4
gpt4 key购买 nike

我有用于排序数组 polsum 的代码:

int comp (const void * a, const void * b){   
double aa = *(double*)a, bb = *(double*)b;

if (aa < bb) return -1;
if (aa > bb) return 1;
return 0;
}

double sort(double *polsum){
int p;
qsort(polsum, sizeof(double),sizeof(double), comp);
return 0;
}

但是输出是:

5,01/
80,86/
85,01/
85,01/
300,88/
600,88/
77888,88/
100400,00/
670,88/
80,86/
80,86/

我哪里做错了?

最佳答案

您传入 sizeof(double) 作为要排序的元素的数量。 sizeof(双) == 8

考虑将以下内容添加到您的排序函数中:

double sort(double *polsum, int count) {    int p;    qsort(polsum, count, sizeof(double), comp);    return 0;}

关于c - 如何正确排序数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15886286/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com