求 c语言选择排序法和 冒泡排序法代码!

如题所述

第1个回答  2012-12-01
int a[10],t,i;
for(i=0;i<10;i++)
{
if(a[i]>a[i+i])
{
t=a[i+1];
a[i+1]=a[i];
a[i]=t;
}
}
从小到大排序
第2个回答  2018-04-09



#include<stdio.h>
void print(int st[10]);
int main()
{
 int a[10]={88,12,5,-6,37,-90,0,27,46,13};
 int b[10]={88,12,5,-6,37,-90,0,27,46,13};
 int i,j;
 int temp,index;//排序法需要的变量。
 
 print(a);
 //冒泡排序(小到大) 
 for(i=0;i<9;i++)
 {
  for(j=i+1;j<10;j++)
  {
   if(a[i]>a[j])
   {
    a[i]=a[i]+a[j];
    a[j]=a[i]-a[j];
    a[i]=a[i]-a[j];
   }
  } 
 }
 print(a);
 
 //选择排序法(小到大)
 for(i=0;i<9;i++)
 {
  temp=b[i];
  index=i;
  for(j=i+1;j<10;j++)
  {
   if(temp>b[j])
   {
    temp=b[j];
    index=j;
   }
  }
  b[index]=b[i];
  b[i]=temp;
  } 
  print(b);
 
 return 0; 
}
void print(int st[10])
{
 int i;
 for(i=0;i<10;i++)
 {
  printf("%d\t",st[i]);
 }
 printf("\n");
}

相似回答