C语言新型排序

#include <stdio.h>
int main()
{
   int i,j,k,m;
   int a[8]={49,38,65,97,49,13,27,76};
   int b=0;
 
   for(i=0;i<8;i++)
	{
		for(j=0;j<i+1;j++)
		{
			
			if(i!=j)
			{
				//b++;
			   // printf("%d\n",b);
				if(a[i]<a[j])
				{
					k=a[i];
					a[i]=a[j];
					a[j]=k;
				}
			}
				
			
		 
		}
		// for(m=0;m<8;m++)
		  // {
		  // 	printf("%d  ",a[m]);
		 //  }
		  // printf("\n");
		
	
	}
   
   for(i=0;i<8;i++)
   {
   	printf("%d  ",a[i]);
   }
   

}

今天研究排序算法时,不小心忘记怎么写了,随意写的,一时居然成功了。
例如,49,38,65,97,49,13,27,76
第一次循环,不作比较。
第二次,与一个数字比较。不与自身比较。
38,49,65,97,49,13,27,76 38 与 49 交换
第三次,与两个数字比较。
38,49,65,97,49,13,27,76
第四次,与三个数字比较。
38,49,65,97,49,13,27,76
第五次,与四个数字比较。
38,49,49,97,65,13,27,76 49与65交换
38,49,49,65,97,13,27,76 65与97交换
第六次,与五个数字比较。
13,49,49,97,65,38,27,76 38与13交换
13,38,49,65,97,49,27,76 49与38交换
13,38,49,49,97,65,27,76 65与49交换
13,38,49,49,65,97,27,76 97与65交换
第七次,与六个数字比较。
13,27,49,49,65,97,38,76 38与27交换
13,27,38,49,65,97,49,76 49与38交换
13,27,38,49,49,97,65,76 65与49交换
13,27,38,49,49,65,97,76 97与65交换
第八次,与七个数字比较。
13,27,38,49,49,65,76,97 97与76交换

结果 13,27,38,49,49,65,76,97

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

佐倉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值