小到大
#include
#include
// 冒泡排序 从小到大
void max1()
{
int a[8] = { 2,1,6,3,4,9,8,7 };
printf("排序前是:\n");
for (int i = 0; i < sizeof(a) / sizeof(int); i++)
{
printf("%d ", a[i]);
}
printf("\n");
//外层循环
for (int i = 0; i < sizeof(a) / sizeof(int) - 1; i++)
{
//内层循环 每次循环内存循环就总数组元素 - 外存循环次数 - 末尾最大所有不用在比较
for (int j = 0; j < (sizeof(a) / sizeof(int) - i - 1); j++)
{
// 当前下标元素 > 相邻下标 就进行交换
if (a[j] > a[j + 1])
{
int c = a[j]; // 临时存放最大值
a[j] = a[j+1]; // 小值在前
a[j+1] = c; // 大值在后
}
}
}
for (int i = 0; i < sizeof(a) / sizeof(int); i++)
{
printf("%d ", a[i]);
}
printf("\n");
}
int main()
{
max1();
system("pause");
return EXIT_SUCCESS;
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
大到小
#include
#include
// 冒泡排序 从小到大
void max1()
{
int a[8] = { 2,1,6,3,4,9,8,7 };
printf("排序前是:\n");
for (int i = 0; i < sizeof(a) / sizeof(int); i++)
{
printf("%d ", a[i]);
}
printf("\n");
//外层循环
for (int i = 0; i < sizeof(a) / sizeof(int); i++)
{
//内层循环 每次循环内存循环就总数组元素 - 外存循环次数 - 末尾最大所有不用在比较
for (int j = 0; j < (sizeof(a) / sizeof(int) - i - 1); j++)
{
// 当前下标元素 > 相邻下标 就进行交换
if (a[j] < a[j + 1])
{
int c = a[j]; // 临时存放最大值
a[j] = a[j+1]; // 小值在前
a[j+1] = c; // 大值在后
}
}
}
for (int i = 0; i < sizeof(a) / sizeof(int); i++)
{
printf("%d ", a[i]);
}
printf("\n");
}
int main()
{
max1();
system("pause");
return EXIT_SUCCESS;
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42