#include<stdio.h>
#define n 7
int main()
{
int i,j;
int x[n];
printf("请输入7个数字:\n");
for(i=0;i<n;i++)
scanf("%d",&x[i]);
for(i=0;i<n-1;i++) //控制趟次,7个数就需要交换6趟(两两交换),∴ :i<n-1
{
for(j=0;j<n-i-1;j++)
{
/*控制交换次数,每执行完一趟后,就可以保证最后一个数一定是最大或者最小的数,
下一轮就无需再管这个数,继续排前面的数就好,那么两趟后就确定了两个最大或者
最小的数,那么就在继续排列前面的数,∴ :j<n-i-1 */
if(x[j]>x[j+1])
{
int temp = x[j]; // temp是两个数交换值的中间变量
x[j]=x[j+1];
x[j+1]=temp;
}
}
}
printf("按从小到大排序为:\n");
for(i=0;i<n;i++)
printf("%d\t",x[i]);
printf("\n");
return 0;
}
十大算法 — 冒泡排序法【C语言代码诠释】
最新推荐文章于 2024-08-20 14:02:56 发布