I can't figure out how to print after every pass through the bubble sort. I'm supposed to display the sort after every pass through the loop. Below is what I have so far.
[CODE=c]
#include <stdio.h>
#define MAXWORD 101
void swap(int *i, int *j);
int main(void)
{
int sort[MAXWORD];
int size;
int i = 1;
int j;
int pass = 0;
printf("Enter how many numbers you want sorted. (Max lentgth is 100)\n\n");
scanf("%d", &size);
printf("\nEnter the numbers.\n\n");
for (i = 0; i < size; ++i) /*Fill the array with the numbers input by user*/
scanf("%d", &sort[i]); /*Accept the numbers entered by user*/
printf("\nUnord ered data:");
for (i = 0; i < size; ++i) /*Print the array of numbers that were entered by user*/
printf("%5d", sort[i]);
printf("\n");
for (i = 0; i < size; ++i)
{
for (j = i + 1; j < size; ++j)
{
if (sort[i] > sort[j])
swap(&sort[i], &sort[j]);
++pass;
printf(" After pass %d:", pass);
for (i = 0; i < size; ++i)
printf("%5d", sort[i]);
printf("\n");
}
}
return 0;
}
[/CODE]
Please me know if anyone has any ideas on how to print after each pass through the loop.
[CODE=c]
#include <stdio.h>
#define MAXWORD 101
void swap(int *i, int *j);
int main(void)
{
int sort[MAXWORD];
int size;
int i = 1;
int j;
int pass = 0;
printf("Enter how many numbers you want sorted. (Max lentgth is 100)\n\n");
scanf("%d", &size);
printf("\nEnter the numbers.\n\n");
for (i = 0; i < size; ++i) /*Fill the array with the numbers input by user*/
scanf("%d", &sort[i]); /*Accept the numbers entered by user*/
printf("\nUnord ered data:");
for (i = 0; i < size; ++i) /*Print the array of numbers that were entered by user*/
printf("%5d", sort[i]);
printf("\n");
for (i = 0; i < size; ++i)
{
for (j = i + 1; j < size; ++j)
{
if (sort[i] > sort[j])
swap(&sort[i], &sort[j]);
++pass;
printf(" After pass %d:", pass);
for (i = 0; i < size; ++i)
printf("%5d", sort[i]);
printf("\n");
}
}
return 0;
}
[/CODE]
Please me know if anyone has any ideas on how to print after each pass through the loop.
Comment