冒泡排序主要就四条语句:2个for循环,一个 if 判断,一个交换数值
主要逻辑:
每次 i 的定位,都定了数组每个位置的最佳数字,而 j 是负责帮 i 找最佳数字的
#include<stdio.h>
#include<string.h>
#define N 5
void swap(int *a,int *b);
int main()
{
int i,j;
int num[N]={4,1,2,5,3};
/*------主要的冒泡排序语句-----------*/
for(i=0;i<N;i++)
for(j=i+1;j<N;j++)
if(num[i]>num[j]) //从小到大排
swap(&num[i],&num[j]);
/*----------------------------------*/
/*遍历*/
for(i=0;i<N;i++)
printf("%d ",num[i]);
return 0;
}
void swap(int *a,int *b)
{
int tmp;
tmp = *a;
*a= *b;
*b=tmp;
}
打印结果:1 2 3 4 5