C语言期末复习3(冒泡排序法)

有一个序列:22,-9,8,12,9,0,55,6从小到大排序,用冒泡法经过三轮排序后,这8个数的顺序为:____________________________

答案:-9,8,0,9,6,12,22,55

冒泡法即将小的数向上排大的数向下排,每经过一轮,小的数就会向前走。

我们可以根据以下代码来直观感受一下冒泡排序法。

#include<stdio.h>
int main()
{
	int a[8]={22,-9,8,12,9,0,55,6};//首先定义一个数组
	int i,j,t,k;
	for(i=0;i<8-1;i++)
	{
		for(j=0;j<8-i-1;j++) //利用双重for循环进行排序 
		{
		     if(a[j]>a[j+1])//如果前一个比后一个数大,将它们进行交换 
		     {
		     	t=a[j]; //定义一个中间数t
				a[j]=a[j+1];
				a[j+1]=t;
			 }
			 
		}
		for(k=0;k<8;k++)
			 {
			 	printf("%d ",a[k]);//每排序一次输出排序后的数 
			 }
			 printf("\n");
	 } 
}

输出结果为

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值