//选择排序
#include
void main()
{int i,n,j,k,temp,a[100];
printf("Input n:\n");
scanf("%d",&n);
printf("Input the arry:\n");
for(i=0;iscanf("%d",&a[i]);
for(i=0;i{ k=i; /*给记号赋值*/
for(j=i+1;jif(a[k]>a[j]) k=j; /*是k总是指向最小元素*/
if(i!=k) /*当k!=i是才交换,否则a[i]即为最小*/
{ temp=a[i]; a[i]=a[k]; a[k]=temp;}
}
printf("After the arrangement:\n");
for(i=0;iprintf("%d ",a[i]);
printf("\n");
}
//冒泡排序
#include
void main()
{int n,i,j,temp,a[100];
printf("Input n:\n");
scanf("%d",&n);
printf("Input the arry:\n");
for(i=0;iscanf("%d",&a[i]);
for(j=n-1;j>0;j--) //依次判断当前最大值,冒泡地将其放在最后的位置
for(i=0;iif(a[i]>a[i+1]) { temp=a[i]; a[i]=a[i+1]; a[i+1]=temp;}
printf("After the arrangement:\n");
for(i=0;iprintf("%d ",a[i]);
printf("\n");
}
#include
#defineSIZE8
voidbubble_sort(inta[],intn);
voidbubble_sort(inta[],intn)//n为数组a的元素个数
{
inti,j,temp;
for(j=0;j
if(a[i]>a[i+1])//数组元素大小按升序排列
{
temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;
}
}
}
intmain()
{
intnumber[SIZE]={95,45,15,78,84,51,24,12};
inti;
bubble_sort(number,SIZE);
for(i=0;i
printf("%d",number[i]);
}
printf("\n");
}冒泡
#include
#include
void swap(int*a,int*b)
{
int temp;
temp=*a;
*a=*b;
*b=temp;
}
void select_sort(int A[],intn)
{
register int i,j,min,m;
for(i=0;i
for(j=i+1;j
if(A[min]>A[j])
{min=j;}
}
if(min!=i)
{
swap(&A[min],&A[i]);
printf("第%d趟排序结果为:\n",i+1);
for(m=0;m
if(m>0){
printf("");
}
printf("%d",A[m]);
}
printf("\n");
}
}
}
int main(void)
{
int n;
while(scanf("%d",&n)!=EOF)
{
int i;
int*A=(int*)malloc(sizeof(int)*n);
for(i=0;i
scanf("%d",&A[i]);
}
select_sort(A,n);
printf("最终排序结果为:\n");
for(i=0;i
if(i>0){
printf("");
}
printf("%d",A[i]);
}
printf("\n");
}
return 0;
}选择
voidinsert_sort(int*array,unsignedintn)
{
inti,j;
inttemp;
for(i=1;i
temp=*(array+i);
for(j=i;j>0&&*(array+j-1)>temp;j--)
{
*(array+j)=*(array+j-1);
}
*(array+j)=temp;
}
}插入