冒泡排序每壹趟排序把最大的放在最右邊。
比如:
87 12 56 45 78
87和12交換:12 87 56 45 78
87和56交換: ? 56 87 45 78
87和45交換: ?45 87 78
87和78交換: 78 87
到此第壹趟排序結束,接下來的每壹趟排序都是這樣。
#include<stdio.h>void?Print(int?*num,?int?n)
{
int?i;
for(i?=?0;?i?<?n;?i++)
printf("%d?",?num[i]);
puts("\n");
return;
}
void?Bubble_Sort(int?*num,?int?n)
{
int?i,?j;
for(i?=?0;?i?<?n;?i++)
{
for(j?=?0;?i?+?j?<?n?-?1;?j++)
{
if(num[j]?>?num[j?+?1])
{
int?temp?=?num[j];
num[j]?=?num[j?+?1];
num[j?+?1]?=?temp;
}
Print(num,?n);
}
}
return;
}
int?main()
{
int?num[8]?=?{87,?12,?56,?45,?78};
Bubble_Sort(num,?5);
return?0;
}