Max Weber’s bureaucratic theory on bureaucracy is the basis for the systematic formation of any organization and is designed to ensure efficiency and economic effectiveness. It is an ideal model for

Sort the student database according to their telephone number.

Now, if we have to exchange the entries, that is terrible:

if( student[i].tel > student[i+1].tel) { sid = student[i].sid; tel = student[i].sid; etc = student[i].etc; student[i].sid = student[i+1].sid; student[i].tel = student[i+1].tel; student[i].etc = student[i+1].etc; student[i+1].sid = sid; student[i+1].tel = tel; student[i+1].etc = etc; } This will be unacceptable if the student has a lot more info items, ie, address, social security, age, yeat at EWU, blah, blah, blah.

So, we create an array of pointers to STUDENT type.

The pointers will have address of STUDENT array.

struct STUDENT *ptr[NUM_STUDENT]; // read the previous mail's attachment for loop ptr[i] = & student[i];