/* * Bubble sort implementation example */ #include #define MAXSIZE 8 void bubble_sort(int n, int list[]) { int i, j, s; for (i = 0 ; i < n - 1; i++) { for (j = 0 ; j < n - i - 1; j++) { /* Sort in ascending order */ if (list[j] > list[j+1]) { /* swap */ s = list[j]; list[j] = list[j+1]; list[j+1] = s; } } } } int main( void) { int a[MAXSIZE], n = MAXSIZE, i; /* * Worst case scenario - a list in descending order */ printf("Original list in descending order:\n"); for (i = 0 ; i < n ; i++) { a[i] = n - i; printf("%3d\n", a[i]); } bubble_sort(n, a); printf("Sorted list in ascending order:\n"); for (i = 0 ; i < n ; i++) { printf("%3d\n", a[i]); } return 0; }