其他分享
首页 > 其他分享> > 2021-08-01

2021-08-01

作者:互联网

C语言两种排序方法

选择排序

#include <stdio.h> 
int main()
{
	int array[] = {75, 65, 98, 72, 69};
	int i,j,min,index,temp;

	for(j=0; j<4; j++)  // 5个数中,寻找4个较小值。剩下的就是最大值。 
	{
		min = array[j];  // 最小值的基准值。 
		index = j;       // 同时一定要记录对应的下角标。 
		for(i=j+1; i<5; i++)   // 从下一个数开始比较。 
		{
			if( min > array[i] )
			{
				min = array[i];   // 获取最小值,同时获取最小值所在位置(下标)
				index = i;
			}
		}

		if(j != index)    // 判断是否在指定位置
		{
			array[index] = array[j];
			array[j] = min;
		}
	}
	for(i=0; i<5; i++)   // 输出数组元素。 看成效。 
	{
		printf("%5d", array[i]);
	}
	return 0;
}

2冒泡排列

#include <stdio.h> 
int main()
{
	int a[] = {223, 77, 45, 90, 78};
	int i,j,temp; 

	for(j=0; j<4; j++)
	{
		for(i=0; i<4-j; i++)
		{
			if(a[i] > a[i+1])
			{
				temp = a[i];
				a[i] = a[i+1];
				a[i+1] = temp;
			}
		}
	}
	for(i=0; i<5; i++)
	{
		printf("%-5d", a[i]);   // %-5d    - : 代表左对齐。 
	}
}

标签:index,01,temp,min,int,08,2021,5d,array
来源: https://blog.csdn.net/qq_45112909/article/details/119296250