typedef struct{    char name[20];    int age;    float score;}Stu;#import 
//姓名升序void sortByName(Stu *p , int count ){    for (int i = 0 ; i < count -1; i ++) {        for (int j= 0 ; j < count -1-i; j ++) {            if (strcmp((p + j)->name, (p + j + 1)->name) > 0 ) {                Stu temp  = *(p + j);                *(p + j) = *(p + j + 1);                *(p + j + 1) = temp;            }        }    }    }//年龄void sortByAge( Stu *p , int count ){    for (int i = 0 ; i < count -1; i ++) {        for (int j= 0 ; j < count -1-i; j ++) {            if ((p + j)->age > (p + j + 1)->age) {                Stu temp  = *(p + j);                *(p + j) = *(p + j + 1);                *(p + j + 1) = temp;            }        }    }}//成绩void sortByScore(Stu *p , int count ){    for (int i = 0 ; i < count -1; i ++) {        for (int j= 0 ; j < count -1-i; j ++) {            if ((p + j)->score > (p + j+ 1)->score ) {                Stu temp  = *(p + j);                *(p + j) = *(p + j + 1);                *(p + j + 1) = temp;            }        }    }}void outPut(Stu *p , int count ){    for (int i = 0 ; i < count ; i ++) {        printf("name = %s , age = %d , score = %.2f\n" , (p + i)->name,(p + i)->age , (p + i)->score);    }    }typedef void (*FUN) (Stu *p , int count);void student (FUN func ,Stu *p , int count ){    func(p , count);}int main(int argc, const char * argv[]){    Stu stu[5] = {        {"zhang",20,80},        {"wang", 22,82},        {"li",23,86},        {"zhao",22,83},        {"liu",20,89}    };        Stu *p = NULL;    p = stu;    student(outPut,p,5);    student(sortByName,p, 5);    student(outPut,p,5);   // outPut(p, 5);   // sortByName(p, 5);  //  outPut(p, 5);       return 0;}