12345,学习真辛苦,23456,what can you do---排序

52 阅读1分钟

排序

排序:3,5,2,6,4

  1. 原顺序为{5,3,2,6,4}

  2. 交换数组中两个元素的值!

  3. 把下标为0的元素,和下标为1的元素交换一下位置,变为 {3,5,2,6,4}

#include 
int main(){
	
	int arr[5] = {5,3,2,6,4};
	
	int temp = arr[0]; // temp = 5;
	
	arr[0] = arr[1]; // arr[0] = 3;
	
	arr[1] = temp; // arr[1] = 5;
	 
	printf("%d",arr[0]);
	printf("%d",arr[1]); 
}

结果如下:

image.png

排序:2,3,4,5,6

通过比较相邻元素的大小,并交换,把最大的值放在数组的最后面。

第一次循环,把最大的值放到了最后面,再经过多次循环,依次把最大值放后面。

#include 
int main(){
	
	int arr[5] = {5,3,2,6,4};
	
	for(int i=0;i arr[j+1]){
				int temp = arr[j];
				arr[j] = arr[j+1];
				arr[j+1] = temp;
			}
		} 
	}
	
	
	for(int i=0;i
int main(){
	// 类型 数组名[个数] 
	int arr[5];
	
	// 从键盘上输入5个数字
	for(int i=0;i arr[j+1]){
				int temp = arr[j];
				arr[j] = arr[j+1];
				arr[j+1] = temp;
			}
		}
	}
	printf("-----------------------\n");
	// 打印输出
	for(int i=0;i