C语言数组+冒泡排序

版权声明:转载请注明 https://blog.csdn.net/qq_34720818/article/details/86760208

C语言数组+冒泡排序

一、数组知识点
在这里插入图片描述
二、冒泡排序
从大到小基本思想: 每趟将相邻两个数字依次比较,将大的调到前面,最终每趟会将最小的沉到最后(这也是起名为冒泡的原因,大的向上冒泡,小的向下沉)。如果有n个数字,则要进行n-1趟比较,第一趟比较中要进行n-1次的两两比较,在第i趟要进行n-1-i次的两两比较。

示例代码:

//把一个整数插入从小到大排好序的数组中,要求新的数组仍然满足从小到大的顺序
int data[10]={66,33,126,128,888,10,67,54,20,16};
	int temp=0;
	for(int i=0;i<10-1;i++)
		for(int j=0;j<10-1-i;j++)
			if(data[j]<data[j+1])
			{
				temp=data[j];
				data[j]=data[j+1];
				data[j+1]=temp;
			}
    printf("数据从大到小排序如下:\n");
	for(i=0;i<10;i++)
		printf("%d ",data[i]);
	printf("\n");
	printf("请插入一个数字\n");
	int interNum;
	scanf("%d",&interNum);
	for(i=0;i<10;i++)
	{
		if(data[i]<=interNum)
		{
			for(int s=9;s>=i;s--)
				data[s+1]=data[s];
			break;
		}
	}
	data[i]=interNum;
	printf("插入数字后的排序如下:\n");
	for(i=0;i<11;i++)
		printf("%d ",data[i]);
	printf("\n");

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_34720818/article/details/86760208