C语言编程

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

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

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

代码如下所示。

#include<stdio.h>
#define MAX  100int order(int m[],int n)//删去数组m中的重复元素,并按从小到大排序
{int i,j,k;printf("数组M中含有的元素个数为:%d\n",n);for(i=1;i<n;i++)//按冒泡法排序{for(j=i;j>0;j--){while(m[j]==m[j-1])//删除重复元素{for(k=j;k<n-1;k++){m[k]=m[k+1];printf("出现重复元素\n");}n--;}if(m[j]<m[j-1]){int t=m[j];m[j]=m[j-1];m[j-1]=t;printf("出现元素交换\n");}}}printf("完成后的n的值为:%d\n",n);return n;
}int main()
{int a[MAX],n,i=0;printf("请输入要输入数组元素的个数N\n");scanf("%d",&n);printf("请依次输入数组的元素\n");while(i<n){scanf("%d",&a[i]);i++;}printf("数组输入完毕\n");n=order(a,n);printf("删除重复元素并排序后的结果为:\n");for(i=0;i<n;i++)printf("%d\t",a[i]);printf("\n");
}

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

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

  1. c\c++语言删除数组中重复元素

    c\c++语言删除数组中重复元素 如题:num[]={1,2,3,3,4,5,6} 输出为:123456 下为原代码: #include "stdafx.h" #include & ...

  2. java删除数组中重复元素

    id="BAIDU_DUP_fp_iframe" src="https://pos.baidu.com/wh/o.htm?ltr="> > src= ...

  3. jq 数组不重复_jquery删除数组中重复元素

    话不多说,下面就跟着小编来看下利用jquery实现删除数组中重复元素的具体思路吧 首先定义如下数组: var arr=[0,2,3,5,6,9,2]; 我们可以看到数组中存在重复元素'2'; 最后通过 ...

  4. java删除数组中重复元素的方法

    java删除数组中重复元素的方法 方法一:for双循环 方法二:利用HashMap,储存元素 方法一:for双循环 1.声明int类型index,该数即可为不重复元素下标,还可统计数组中不重复元素的个 ...

  5. java删除数组中重复元素的几种方法

    Java操控数组,删除数组中所有的重复元素,使其数组元素全部唯一,有以下几种方法: 1,使用set(最好想到),set本身就是不重复的集合: package Array_test;import jav ...

  6. 511遇见易语言循环遍历删除数组中重复成员方法

    方法3采用两次计次循环进行遍历和如果真进行判断,是最难理解的一种方法,本人感觉没有方法2好用,这里作为一种思考讲解学习参考. 511遇见易语言教程 视频教程源码 .版本 2 .支持库 spec.子程序 ...

  7. 删除数组中重复元素(C语言)

    编写函数,删除数组中所有的重复元素,使数组变成一个集合,函数返回集合中元素的个数. 书上习题 #include<stdio.h> int set(int a[],int n) {int i ...

  8. c++删除数组中重复元素_C / C ++中的数组

    C ++提供了一个数据结构array(数组),该数组存储一个固定大小的顺序相同类型元素的集合.它们用于存储相似类型的元素.(所有元素的数据类型必须相同.)它们可用于存储原始数据类型的集合,例如任何特定 ...

  9. c++删除数组中重复元素_leetcode 数组中重复的数字

    找出数组中重复的数字. 在一个长度为 n 的数组 nums 里的所有数字都在 0-n-1 的范围内.数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次.请找出数组中任意一个重 ...

最新文章

  1. linux 如何运行.sql文件
  2. spark-机器学习实践-K近邻应用实践一
  3. Dynamips和Vmware完成CCVP试验(4)
  4. 【洛谷 2330】繁忙的都市
  5. mysql 特殊字符支持_mysql 解决生僻字,特殊字符插入失败
  6. 8个有趣的Linux提示与技巧
  7. 图解算法学习笔记(一): 算法简介
  8. 【tensorflow】tensorflow -gpu安装及jupyter环境更改
  9. python中的元类_Python中的元类(metaclass)
  10. 会议通知|第3届全国高校大数据教学研讨会
  11. python实现最大公共子序列
  12. IE11不支持Selenium 2.0的解决方法
  13. linux运行jar包依赖,linux怎么打jar包
  14. java中查询redis中hash结构的值_阿里面试官:HashMap 熟悉吧?来聊聊 Redis 吧
  15. 免费下载IOS/MAc付费软件
  16. 在拼多多上班,是一种什么样的体验?我心态崩了呀!
  17. IDEA 重复执行 updating indices问题
  18. 曾经是“杀手级”桌面语言,Java桌面开发为何走向衰落?
  19. 基于面板数据的熵值法介绍与实现
  20. lisp 阿基米德螺旋_用CAD如何画阿基米德螺旋线

热门文章

  1. 基于颜色分割的盲道识别算法
  2. 路由器无线桥接的方法
  3. 第 13 章 可扩展性设计之 MySQL Replication
  4. [Error] cannot call member function ‘‘ without object
  5. 水生植物的Java莫斯
  6. 包围曝光(Bracket Exposure)
  7. 在anaconda中git找不到命令,可能是设置的git环境变量路径包含中文
  8. CommVault v11新特性和战略解读
  9. jQuery的基本用法
  10. resilience4j-ratelimiter:限流器