冒泡法按照大小排序10个数

define _CRT_SECURE_NO_WARNINGS

include<stdio.h>

include<stdlib.h>

int main()
{
int a[10];
int i;
int j;
int c;
for (i = 0; i < 10;i++)
scanf("%d", &a[i]);
for (i = 0; i < 9; i++)//比的次数9次
{
for (j = 0; j < 9-i; j++)//冒泡法,第一个循环i=0,j=8,第二个循环从第二个开始i=1,j=7;
{
if (a[j] < a[j + 1])
{
c = a[j];//将两个数互换
a[j] = a[j + 1];
a[j + 1] = c;
}
}
}
printf(“排序结果:”);
for (i = 0; i < 10; i++)
{
printf("%d\n",a[i]);
}
system(“pause”);
return 0;
}
备注:冒泡法的原理就是可以用扑克牌为例子,首先第一次比较一共比较九次,第一张牌和第二张比较如果第一张小于第二张则互换。如果第一张大于第二张则不变位置,接下来第二张和第三张比较,第二张小于第三张则换,第二张大于第三张则不换,直到第九张和第十张比小则换大则不换,这是一个循环在第一轮过后最后一张也就是第十张一定是最小的,已经有一张不需要比较所以第二次比较则成了8次。以此类推,十个数比9次就好,为什么程序从0开始因为数组下标从0开始.
重要程序语句for (j = 0; j < 9-i; j++)
a[j] < a[j + 1]

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值