函数qsort
											qsort可不可以对double类型的数组进行排序?可不可以举个例子??
 2011-06-14 09:53
	    2011-06-14 09:53
   2011-06-14 10:32
	    2011-06-14 10:32
   2011-06-14 10:36
	    2011-06-14 10:36
   程序代码:
程序代码:#include <stdio.h>
#include <stdlib.h>
double values[] = { 40.3, 10.123, 100, 90.8, 20, 25 };
int compare (const void * a, const void * b)
{
  return ( *(double *)a - *(double *)b );
}
int main ()
{
  int n;
  qsort (values, 6, sizeof(double), compare);
  for (n=0; n<6; n++)
     printf ("%f ",values[n]);
  return 0;
}										
					
	 2011-06-14 10:48
	    2011-06-14 10:48
   程序代码:
程序代码:#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#define SIZE 20
int compare(const void * p1, const void * p2) {
    return *(double *)p1 - *(double *)p2;
}
int main(void) {
    double buffer[SIZE];
    int i;
    srand((unsigned)time(NULL));
    printf("before :\n");
    fflush(stdout);
    for(i = 0; i < SIZE; i++) {
        buffer[i] = rand() / 3.0;
        printf("%f\t", buffer[i]);
    }
    printf("\nafter :\n");
    qsort(buffer, SIZE, sizeof(double), compare);
    for(i = 0; i < SIZE; i++)
        printf("%f\t", buffer[i]);
    return 0;
}
	
		
			
		
	

 2011-06-14 10:53
	    2011-06-14 10:53
   2011-06-14 15:16
	    2011-06-14 15:16