qsort() in structures.

 #include<stdio.h>

#include<stdlib.h>

typedef struct
   { 
       char name[20];
       int age;
       int no_of_test_matches;
       int avg_runs;
   }details;

int compair(const void *paconst void *pb)
    const details *p1 = pa;
    const details *p2 = pb;
    return p1 -> avg_runs - p2 -> avg_runs;
}
void main()
{
   
   details a[3];
   for(int i=0;i<3;i++)
   { 
       scanf("%s%d%d%d\n", &a[i].name, &a[i].age, &a[i].no_of_test_matches, &a[i].avg_runs);
   }
   int n;
   n = sizeof(a)/sizeof(details);
   qsort(ansizeof(details), compair);
   for(int i=0;i<3;i++)
   { printf("%s | %d | %d | %d\n"a[i].namea[i].agea[i].no_of_test_matchesa[i].avg_runs);
   }
}

Comments