首页 > 其他分享 >C语言:删除已经排序的整型数组中的重复值

C语言:删除已经排序的整型数组中的重复值

时间:2022-10-17 08:44:06浏览次数:77  
标签:int len C语言 重复 整型 数组 sizeof 排序

#include <stdio.h>
//每找到一个重复的元素,则最末尾前移一位,去重范围缩小一位
//找到重复元素后,此时数组下标之后的元素向前移一位 
main()
{
    int a[]={1,1,1,1,2,2,2,2,2,3,4,5,5,6,7,7,8,8,8,9,9,10,10,12};
    int len=sizeof(a)/sizeof(a[0]);
    int i,j,k,m=len;
    for(i=0;i<len;i++)
    {
        for(j=i+1;j<len;j++)
        if(a[i]==a[j])
        {
            printf("%d %d\n",a[i],a[j]);
            for(k=j;k<len-1;k++)
            {
                a[k]=a[k+1];
            }
            len--;//整个数组去重范围缩小 
            j--;//重置到上一次的去重起始位置 
        }
     } 
    for(i=0;i<len-1;i++)
    printf("%d ",a[i]);
    printf("%d",a[i]);
    getchar();
 }

 

标签:int,len,C语言,重复,整型,数组,sizeof,排序
From: https://www.cnblogs.com/xkdn/p/16797873.html

相关文章

  • VS2019中文输出乱码解决方法(C语言)
    现象:VS2019控制台输出中文乱码   第一种解决方法:安装插件FormatonSave重启VS2019生效  (!!!注意:别装错了,刚开始我就装错了这个UTF-8(NoBOM),装了这个插件的同学,记......
  • 初识C语言
    2022-10-1701:32:17/*%d--打印整型%c--打印字符%f--打印浮点数字-小数%p--以地址的方式打印%x--打印16进制数字%lf--打印双......
  • c语言学习记录2
    二进制   二进制(基数为2)数字系统中有两个可能值,在每一位上,通常表示为0或1。相反,在十进制(基数为10)数字系统中,在每一位上,有10个可能值(0,1,2,3,4,5,6,......
  • 【数据结构】队列的定义以及C语言代码的实现(仅供学习交流使用)
    1、队列的定义队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出FIFO(FirstInFirstOut)入队列:进行插入操作的一端称为队尾出队......
  • 【数据结构】栈的定义以及接口函数的C语言代码实现(仅供学习交流使用)
    1、栈的定义栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last......
  • C语言入门1
    C语言初级阶段常量与变量1.常量:不能被改变的量,ex:1、2、3(1)整型常量:整数(2)实型常量:①十进制小数形式:数字和小数点组成②指数形式:12.34e3=10.34*103(3)字符常量:ex:’a'、......
  • 【C语言】操作数的优先级大小。
    ......
  • 递归与分治法实现快速排序算法
    ​本人CSDN链接:http://t.csdn.cn/Wt0Nm提示:首先了解并明白递归与分治法的快速排序文章目录 前言递归与分治法实现快速排序算法,输入一串以英文字符逗号隔开的数......
  • C语言实例2
    题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,提成7.5%;利润20万到4......
  • 【C语言有这个就够了】七.实用调试技巧
    (一)什么是BUG历史上第一个bug导致程序运行错误的对象(二)调试是什么调试就是破案的过程,因为有人写代码是这样的:1.调试又称除错,是发现和减少计算机程序或电子仪器设备中程序错误......