【每天进步一点点,让优秀成为一种习惯!】
排序方法在C语言甚至任何一种语言中都非常有用,下面是我根据各个算法编写的程序,以便调试
1、主元排序:
代码如下:
//designby sdu_yjy
//2012 0301
#include<stdio.h>
#define n10
voidmain(void)
{
int a[n] = {3,4,5,1,5,2,6,2,5,7};
int i,j,r;//r is set for exchange
for (i=0;i<n-1;i++)
for(j = i+1;j<n-1;j++)
{
if (a[j]<a[i])
{
r = a[j];
a[j]=a[i];
a[i]=r;
}
}
//为了看效果,打印出来了
for (i=0;i<n;i++)
printf("%d",a[i]);
}
2 冒泡排序:
代码如下:
//sdu_yjy
//20120304
#include<stdio.h>
void main(void)
{
int a[9] = {1,3,34,6,7,2,4,8,8};
bool flag;
int i,j;
for(i=0;i<8;i++)
printf("%d",a[i]);
printf("\n");
while(flag)
{
flag = false;
int r;
for(i=0;i<8;i++)
if (a[i]<a[i+1])
{
r=a[i];
a[i]=a[i+1];
a[i+1]=r;
flag = true;
}
}
for(j=0;j<8;j++)
printf("%d",a[j]);
}