C语言—冒泡排序

方法一(不使用函数解决)

cpp 复制代码
#define _CRT_SECURE_NO_WARNINGS 1

#include<stdio.h>
int main()
{
	int arr[]={15,52,23,0,5,6,45,8,9,10};
    int i=0;
	int j=0;
    for ( i = 0; i < 9; i++)
    {
        int flag=1;        //flag判断数组元素是否有序,这里先假设有序
		for ( j = 0; j < 9-i; j++)
        {
            if (arr[j]>arr[j+1])
            {
                int tmp=arr[j];
                arr[j]=arr[j+1];
                arr[j+1]=tmp;
				flag = 0;    //元素不是有序
            }
        }
		if(flag ==1)
		{
			break;
		}
    }
    printf("The sorted number :\n");
        for ( i = 0; i < 10; i++)
        {
            printf("%d ",arr[i]);
        }
        printf("\n");

	return 0;
}

方法二(函数解决)

cpp 复制代码
#define _CRT_SECURE_NO_WARNINGS 1

#include<stdio.h>
void bubble_sorted(int arr[],int sz)
{
	int i = 0;
	for(i=0;i<sz;i++)
	{
		int flag=1;
		int j = 0;
		for(j=0;j<sz-1-i;j++)
		{
			
			if(arr[j]>arr[j+1])
			{
				int temp=arr[j];
				arr[j]=arr[j+1];
				arr[j+1]=temp;
				flag=0;
			}
		}
		if(flag == 1)
		{
			break;
		}
	}
}
int main()
{
	int arr[]={15,52,23,0,5,6,45,8,9,10};
	int i=0;
	int sz=sizeof(arr)/sizeof(arr[0]);
	bubble_sorted(arr,sz);
	printf("The sorted number :\n");
	for(i=0;i<sz;i++)
	{
		printf("%d ",arr[i]);
	}
	printf("\n");
	return 0;
}
相关推荐
~kiss~6 分钟前
K-means损失函数-收敛证明
算法·机器学习·kmeans
杨小码不BUG14 分钟前
Davor的北极探险资金筹集:数学建模与算法优化(洛谷P4956)
c++·算法·数学建模·信奥赛·csp-j/s
mit6.82436 分钟前
10.5 数位dp
c++·算法
2401_881244402 小时前
P3808 AC 自动机(简单版)
算法
老侯(Old monkey)2 小时前
C语言:将字符串逆序存放
c语言·字符串·函数调用
Jayden_Ruan2 小时前
C++十进制转二进制
数据结构·c++·算法
Haooog2 小时前
98.验证二叉搜索树(二叉树算法题)
java·数据结构·算法·leetcode·二叉树
Macre Aegir Thrym3 小时前
MINIST——SVM
算法·机器学习·支持向量机
Young_Zn_Cu4 小时前
LeetCode刷题记录(持续更新中)
算法·leetcode
天选之女wow5 小时前
【代码随想录算法训练营——Day31】贪心算法——56.合并区间、738.单调递增的数字、968.监控二叉树
算法·leetcode·贪心算法