ð
来自「这是RarnuC的Exe程序。是百度编程群老大Rarnu的个人作品。希望大家喜欢」· 代码 · 共 70 行
TXT
70 行
#define MAXN 20
#include <stdlib.h>
/* 对数组 a 中的前 n 个元素进行冒泡法排序 */
void bubble_sort(int a[], int n)
{
int i, j;
int t;
n--;
while(n > 0)
{
/* 遍历 */
j = 0;
for(i = 0; i < n; i++)
{
if(a[i] > a[i + 1])
{
/* 如果前一个数比后一个数大,则相互交换 */
t = a[i];
a[i] = a[i + 1];
a[i + 1] = t;
/* 记录被交换的下标号 */
j = i;
}
}
/* 由于最大的数肯定会被交换到最后,
* 因此下一次比较时不需要再比较全部的结点,
* 只要比较到最后被交换的数之前即可。
*/
n = j;
}
}
void main()
{
int i, n;
int data[MAXN];
int scount = 0;
printf("\nInput n (n <= 20) = ");
scanf("%d", &n);
if(n > MAXN - 1)
{
printf("### n > %d ###\n", MAXN - 1);
exit(1);
}
/* 随机生成 n 个数 */
randomize();
printf("Before: ");
for(i = 0; i < n; i++)
{
data[i] = rand();
printf("%6d", data[i]);
}
/* 排序 */
bubble_sort(data, n);
/* 输出结果 */
printf("\nAfter: ");
for(i = 0; i < n; i++)
printf("%6d", data[i]);
getch();
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?