SONY程序题
降序排列数组,很常见的,这里我采用冒泡排序法还有选择排序法:
冒泡排序:
#include
void sort(int *array,int num );
int main()
{
int num=9,i;
int array[]={45,56,76,234,1,34,23,2,3};
sort(array,num);
for(i=0;i
printf("%d\t",array[i]);
return 0;
}
void sort(int *array,int num)
{
int i,j;
int temp;
for(i=0;i
{
for(j=0;j
{
if(array[j]
{
temp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
}
}
}
}
选择排序:
#include
void sort(int *array,int num );
int main()
{
int num=9,i;
int array[]={45,56,76,234,1,34,23,2,3};
sort(array,num);
for(i=0;i
printf("%d\t",array[i]);
return 0;
}
void sort(int *array,int num)
{
int i,j,k;
int temp;
for(i=0;i
{
k=i; //每次一趟结束后就从新的一个值开始,无需从头来,因为每一次排完后都是最大的了
for(j=i+1;j
if(array[k]
{
k=j;
}
if(k!=i) //如果k不等于i就说明有更大的值,交换二值
{
temp=array[i];
array[i]=array[k];
array[k]=temp;
}
}
}
版权声明:此文自动收集于网络,若有来源错误或者侵犯您的合法权益,您可通过邮箱与我们取得联系,我们将及时进行处理。
本文地址:https://www.gunzhua.com/jiuye/bishi/96174.html