this is my bubsort code:-
The data being read from the files is of the following form
surname, forename grade
surname1, forename1 grade1
surname2, forename2 grade2
etc........
Code:
/** BUBBLESORT ALGORITHM **/
void bubble_sort (student *student_data, int entries)
{
int j, k;
Boolean exchange_made;
student temp;
k = 1;
exchange_made = TRUE;
int n=entries;
/* Make up to (n - 1) passes through array, exit early if no exchanges are made on previous pass */
while ((k <= entries) && exchange_made)
{
exchange_made = FALSE;
for (j = 0; j < n-1; ++j)
{
if (strcmp(student_data[j].surname,student_data[j+1].surname)>0)
{
/* Number of comparisons on kth pass */
temp = student_data[j];
student_data[j] = student_data[j + 1];
student_data[j + 1] = temp;
exchange_made = TRUE;
/* Exchange must be made*/
}
k++;
}
}