1、冒泡排序法
#include<stdio.h>
//========the sort of bubbling========
void initDataOfArray(int array[],int len)
{
int i;
printf("=======please input %d numbers========\n",len);
for(i=0;i<len;i++){
printf("the %dth number is:\n",i+1);
scanf("%d",&array[i]);
}
printf("done!\n");
}
void compareData(int array[],int len)
{
int i;
int j;
int m;
for(i=0;i<len-1;i++){
for(j=0;j<len-1-i;j++){
if(array[j]<array[j+1]){
m=array[j+1];
array[j+1]=array[j];
array[j]=m;
}
}
}
}
void print(int array[],int len)
{
int i;
printf("Sort from the largest and the smallest:\n");
for(i=0;i<len;i++){
printf("%d ",array[i]);
}
}
int main()
{
int bubbling[10];
int len;
len=sizeof(bubbling)/sizeof(bubbling[0]);
initDataOfArray(bubbling,len);
compareData(bubbling,len);
print(bubbling,len);
puts("\ndone!");
return 0;
}
2、选择排序法
#include<stdio.h>
//=======the sort of selection=======
void initDataOfArray(int array[],int len)
{
int i;
printf("=======please input %d numbers========\n",len);
for(i=0;i<len;i++){
printf("the %dth number is:\n",i+1);
scanf("%d",&array[i]);
}
printf("done!\n");
}
void compareData(int array[],int len)
{
int i;
int j;
int m;
for(i=0;i<len;i++){
for(j=i+1;j<len;j++){
if(array[i]<array[j]){
m=array[j];
array[j]=array[i];
array[i]=m;
}
}
}
}
void print(int array[],int len)
{
int i;
printf("Sort from the largest and the smallest:\n");
for(i=0;i<len;i++){
printf("%d ",array[i]);
}
}
int main()
{
int bubbling[10];
int len;
len=sizeof(bubbling)/sizeof(bubbling[0]);
initDataOfArray(bubbling,len);
compareData(bubbling,len);
print(bubbling,len);
puts("\ndone!");
return 0;
}