您的位置:首页 > 编程语言 > C#

C#-冒泡排序和选择排序

2015-12-25 15:53 513 查看
将一个数组排序

//排序
#include <stdio.h>
int main()
{
int a[]={3,5,2,56,275,85,29,24};
int temp,i,j;
int length= sizeof(a) / sizeof(a[0]);//计算a[]的大小时,不要加‘[]’
//选择排序
for(i=0;i<length-1;i++){
for(j=i;j<length;j++){//选择排序,每一次用一个数和所有其他数做比较,并且依次将最小的数移到两端
if(a[i]<a[j]){
temp=a[j];
a[j]=a[i];
a[i]=temp;

} //从大往小
}
}
//遍历数组
for(i=0;i<length;i++){
printf("%d ",a[i]);
}

printf("\n");

//冒泡排序
//冒泡排序就是每次将相邻的两个数做比较,每一次可以将最值找出,和冒泡排序的区别就是这样
for(i=0;i<length-1;i++){
for(j=0;j<length-i-1;j++){

if(a[j+1] <a[j]){
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;//从小往大
}
}
}

for(i=0;i<length;i++){
printf("%d ",a[i]);
}
printf("\n");
return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: