利用c函数qsort对结构体进行排序
#include <stdio.h>#include <stdlib.h>typedef struct{int x;int y;int h;}dot;int cmp(const void *a, const void *b){return (*(dot *)a).h - (*(dot *)b).h;}int main(){dot line[9];line[0].h = 30;line[1].h = 2;line[2].h = -10;line[3].h = 11;line[4].h = 20;line[5].h = 100;line[6].h = 90;line[7].h = 0;line[8].h = -1;int i;for(i = 0; i< 9; i++)printf("%d ", line[i].h);printf("\n");qsort(line, 9, sizeof(dot), cmp);for(i = 0; i< 9; i++)printf("%d ", line[i].h);printf("\n");return 0;}