就业数据资源平台
当前位置:首页 > 笔试题目
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;


  }


  }


  }

 


就业数据资源平台