冒泡排序主要有以下三点需要注意:
1、数组的输入与输出
2、数据交换
3、需要进行排序的次数
数组的输入与输出:
输入:
for (int i = 0; i < 10; i++)
{
scanf_s("%d", &arr[i]);
}
输出:
for (int i = 0; i<10; i++)
{
printf("%d ", arr[i]);
}
数据的交换:
if (arr[j] >= arr[j + 1])
{
int temp;
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
需要进行排序的次数:
通过冒泡排序我们每一次都能够把最大值输入到最后位置,
for (int j=0;j<9-i;j++)
code
#include<stdio.h>
//冒泡排序
void main() {
int arr[10] = {};
printf("请输入10个数:");
for (int i = 0; i < 10; i++)
{
scanf_s("%d", &arr[i]);
}
for (int i = 0; i<10; i++)
{
printf("%d ", arr[i]);
}
for (int i = 0; i <9; i++)
{
for (int j=0;j<9-i;j++)
{
if (arr[j] >= arr[j + 1])
{
int temp;
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
printf("\n");
printf("排序后的结果为:\n");
for (int i=0; i < 10; i++)
{
printf("%d ", arr[i]);
}
}