SONY程序题

乐求学 人气:2.96W

降序排列数组,很常见的,这里我采用冒泡排序法还有选择排序法:

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("%dt",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("%dt",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;

}

}

}
 

TAGS:SONY