//冒泡排序 升序
//每次将最大的元素冒至最上面
#include <stdio.h>
#include <stdlib.h>
//初始化数组,随机赋值
void init(int a[], int size){
int i;
for(i = 0; i < size; i++)
a[i] = rand ()% 20;//随机生成20以内的数字
}
//打印数组
void show(int a[], int size){
int i;
printf("数组的数字依次为:\n");
for(i = 0; i < size; i++){
printf("%d ",a[i]);
}
printf("\n");
}
//冒泡排序
void bulleSort(int *a, int size){
int i = 0, temp = 0;
while(size--)
{
for(i = 0; i < size; i++){
if(a[i] > a[i+1]){//若小号元素大于大号元素 ,则交换
temp = a[i];
a[i] = a[i+1];
a[i+1] = temp;
}//使大号元素后移
}
}
}
int main(){
int a[10];
init(a, 10);
show(a, 10);
bulleSort(a, 10);
printf("冒泡排序后");
show(a, 10);
return 0;
}