#include<stdio.h>
#include<string.h>
#include<time.h>
#include<stdlib.h>
#include<stdbool.h>
#define N 10
void swap(int *a,int *b)
{
int tmp=*a;
*a=*b;
*b=tmp;
}
void show_arry(int arry[],int n)
{
for(int i=0;i<n;i++)
{
printf("%d ",arry[i]);
}puts("");
}
void sort(int arry[],int n)
{
for(int i=0;i<n-1;i++)//遍历所有元素
{
bool exchange=0; //用来判断这一趟有没有交换
for(int j=0;j<n-1-i;j++)//冒泡,底下冒到顶
{
if(arry[j]>arry[j+1])
{
swap(&arry[j],&arry[j+1]);
exchange=1;
}
}
if(!exchange) //没有交换说明已经有序
break;
}
}
int main()
{
srand((unsigned int)time(NULL));
int arry[N];
for(int i=0;i<N;i++)
{
arry[i]=rand()%100;
}
puts("原数组:");
show_arry(arry,N);
sort(arry,N);
puts("排序后:");
show_arry(arry,N);
}
10-19
7177
09-12
1066
10-30
464