内层循环:对还未经过排序的数组进行两两比较,一步步将最大值移动到最后;
外循环层:经过n轮后,完成排序。
例如:
//冒泡排序
void BubbleSort()
{
int arr[10] = {6,3,0,2,7,5,4,9,1,8};
int len = sizeof(arr)/4;
int i, j, temp;
int flags = 0;
//外层控制循环的次数
for (j = 0; j < len - 1; j++)
{
//内层是比较的次数
for (i = 0; i < len - 1 - j; i++)
{
if (a[i] > a[i + 1])
{
temp = a[i];
a[i] = a[i + 1];
a[i + 1] = temp;
flags = 1;
}
}
if (flags == 0)
return;
}
}