用冒泡法给10个随机数排序求!自己写不出来带带我!。,哭了啊计算机课上课
#include<stdio.h>
#include<stdbool.h> //布尔数据类型的库
#include<time.h> //时间函数的库 time函数
#include<stdlib.h> //随机数函数 srand函数和rand函数
#define N 10 //数组的大小
int main(int argc,char** argv)
{
int a[N],i;
srand(time(0)); //?????
printf("排序前:");
for(i=0;i<N;i++) //给数组赋值
{
a[i]=rand()%180;
printf("a[%d]=%3d\t",i,a[i]); //0~180以内的数字
}
printf("\n");
for(i=0;i<N-1;i++) //排序 外for表示趟数
{
bool flag=false;
for(int j=N-1;j>i;j--) //从后面开始排序
{
if(a[j] < a[j-1]) //如果小数在后,则交换位置
{
int t=a[j-1]; //交换 这种是不会出现值溢出
a[j-1]=a[j];
a[j]=t;
flag=true;
}
}
if(!flag) //如果排过,表示有序
{
break;
}
}
printf("排序后:");
for(i=0;i<N;i++)
{
printf("a[%d]=%3d\t",i,a[i]);
}
printf("\n");
return 0;
}