0
点赞
收藏
分享

微信扫一扫

C语言:冒泡排序

Sky飞羽 2022-03-30 阅读 114
​
int main()                     
{                              
	                            
	int n = 0;                
	int arr[40] = { 0 };      
	scanf("%d", &n);        
	int i = 0;                 
	for (i = 0; i < n; i++)    
	{                          
		scanf("%d", &arr[i]);
	}                        
	//冒泡排序                                                             
	for (i = 0; i < n - 1; i++)  //循环一次进行一趟冒泡排序                  
	{                                                                   
			int j = 0;                                                 
			                                                             
		for (j = 0; j < n - 1 - i; j++)  //在一趟冒泡排序中循环进行比较交换                
		{                                      
			if (arr[j] < arr[j + 1])  //比大小,并交换顺序                 
			{                                                            
				int tmp = arr[j];                                      
				arr[j] = arr[j + 1];                                     
				arr[j + 1] = tmp;                                        
			}
		}
	}
	for (i = 0; i < 5; i++) //循环打印出数组元素排序后的前五个
	{
		printf("%d ", arr[i]);
	}
	return 0;
}

​
int cmp_int(void* e1, const void* e2)
{
	return(*(int*)e2 - *(int*)e1);  // (int*)进行强制类型转换
}
int main()                     
{                              
							    
	int n = 0;                 
	int arr[40] = { 0 };      
	scanf("%d", &n);          
	int i = 0;                
	for (i = 0; i < n; i++)    
	{                          
		scanf("%d", &arr[i]);
	}                                                      
	qsort(arr,n,4,cmp_int);  //自动排序函数
	for (i = 0; i < 5; i++)  //循环打印出数组元素排序后的前五个
	{
		printf("%d ", arr[i]);
	}
	return 0;
}

 

举报

相关推荐

C语言-----冒泡排序

C语言冒泡排序

冒泡排序(c语言)

C语言 冒泡排序

C语言-冒泡排序

c语言冒泡排序

0 条评论