C语言冒泡排序法,用函数形式实现。

冒泡排序法

释疑:冒泡排序法是将数组中的元素依次从小到大(Also 从大到小)进行排序下来。请看如下操作!

共有4个数,如 2,4,1,3.
进行N-1次循环,每一次循环中需进行N-1-i 次交换
i=0时 ,j=0 ( 2,4,1,3) j=1 (2,1,4,3) j=2 (2,1,3,4)
i=1时 ,j=0 (1,2,3) j=1(1,2,3)
j=2时 ,j=0 (1,2)

可以看见每一次循环中,我们在进行交换时,把最大的数排到最后,下一次循环中,我们不用管上一次循环中的最大值,它已经站好自己的位置,我们需要得是将它前面得数排序。

小猿们,看我的运行结果
任茗原创
你最想看的代码:

#include<stdio.h>
int W(int a[10]);  //我们定义10个数
int W(int a[10])
 {  int i,j,t;
 	for(i=0;i<9;i++) //符合上面的循环次数和交换次数
 		for(j=0;j<9-i;j++)	
 			if(a[j]>a[j+1])
 			{
 				t=a[j];     //用中间量将两个数进行交换位置
				a[j]=a[j+1];
				a[j+1]=t;
			}
 }
int main()
{   int i;
    int a[10];
    printf("请输入10个数:");
    for(i=0;i<10;i++)
    scanf("%d",&a[i]);
    W(a);   //调用完函数,已经将数组重新排好顺序,接下来我们
    printf("请输出10个数:"); //可以将数组在main()放出来。
    for(i=0;i<10;i++)
	printf("%d ",a[i]);
	return 0;
 } 

你们有看不懂的,可以在底下评论。点个关注吧!

  • 18
    点赞
  • 61
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值