栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

【C语言编程1】删除数组中重复元素,并排序

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【C语言编程1】删除数组中重复元素,并排序

C语言编程

程序的功能是删除数组中的重复元素,并且按照从小到大的顺序排序。

排序的算法是使用的最基础的冒泡排序。

冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。
它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。
这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。

代码如下所示。

#include
#define MAX  100

int order(int m[],int n)//删去数组m中的重复元素,并按从小到大排序
{
	int i,j,k;
	printf("数组M中含有的元素个数为:%dn",n);
	for(i=1;i
		for(j=i;j>0;j--)
		{
			while(m[j]==m[j-1])//删除重复元素
			{
				for(k=j;k
					m[k]=m[k+1];
					printf("出现重复元素n");
				}
				n--;
			}
			if(m[j]
				int t=m[j];
				m[j]=m[j-1];
				m[j-1]=t;
				printf("出现元素交换n");
			}
		}
	}
	printf("完成后的n的值为:%dn",n);
	return n;
}

int main()
{
	int a[MAX],n,i=0;
	printf("请输入要输入数组元素的个数Nn");
	scanf("%d",&n);
	printf("请依次输入数组的元素n");
	while(i
		scanf("%d",&a[i]);
		i++;
	}
	printf("数组输入完毕n");
	n=order(a,n);
	printf("删除重复元素并排序后的结果为:n");
	for(i=0;i 

程序的运行结果示例如图所示:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/931375.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号