【c】序列中整数去重

数组中的元素不好直接删除,我们可以把重复的数做标记,将他赋值为0,然后正常打印数组,为0的跳过

cs 复制代码
#include<stdio.h>
int main()
{
	int n;
	scanf("%d",&n);
	int arr[n+1];
	for(int i=1;i<=n;i++)
	{
		scanf("%d",&arr[i]);
	}
	for(int j=1;j<=n-1;j++)
	{
		for(int k=j+1;k<=n;k++)
		{
			if(arr[j]==arr[k])
			arr[k]=0;
		}
	}
	int m=1;
	while (m<=n)
	{
		if(arr[m]!=0)
		printf("%d ",arr[m]);
		m++;
	}
	return 0;
}
相关推荐
持续学习的程序员+118 分钟前
强化学习Q-chunking算法
算法
Polaris北34 分钟前
第二十七天打卡
开发语言·c++·算法
风吹乱了我的头发~1 小时前
Day30:2026年2月20日打卡
算法
blackicexs1 小时前
第五周第五天
算法
爱编码的小八嘎1 小时前
第3章 Windows运行机理-3.1 内核分析(5)
c语言
不吃橘子的橘猫2 小时前
《集成电路设计》复习资料2(设计基础与方法)
学习·算法·fpga开发·集成电路·仿真·半导体
halen3332 小时前
How Masters Tool Fixed My Digital Disaster
算法·均值算法·推荐算法
重生之后端学习2 小时前
78. 子集
java·数据结构·算法·职场和发展·深度优先
摸鱼仙人~2 小时前
0-1背包与完全背包:遍历顺序背后的秘密
人工智能·算法
juleskk2 小时前
2.15 复试训练
开发语言·c++·算法