如何删除重复字符c语言

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何删除重复字符c语言相关的知识,希望对你有一定的参考价值。

参考技术A #include<stdio.h>
int main(void)

char s[100];
int i, j, n, k;
printf("请输入一串有重复字符的字符串:\n");
gets(s);
for (n = 0; s[n] != '\0'; n++);
for (i = 0; i < n ; i++)

for (j = k = i + 1; j < n ; j++)
if (s[j] != s[i])
s[k++] = s[j];
s[k] = '\0';

printf("去掉重复字符后结果为:\n");
puts(s);

怎么去掉字符串中重复出现的字符

参考技术A lz 你好

这个就是一个比较简单的算法题 , 你可以自己写

但是用Java语言就不需要了 , Java自带泛型相关的类 , 很有用

其中TreeSet集合能自动识别添加的是否重复 , 重复的将不会添加 , 很方便

以下是实现代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import java.util.List;
import java.util.Scanner;

public class DeleteRepeated
private String str;
private TreeSet noReapted;//带有String类型的TreeSet泛型

public DeleteRepeated()
Scanner in = new Scanner(System.in);

System.out.println ("输入一个字符串:");
str = in.nextLine();

noReapted = new TreeSet();


//清楚重复的数据
public void removeRepeated()
for (int i = 0; i < str.length(); i )
noReapted.add("" str.charAt(i));
//str.charAt(i)返回的是char型 所以先加一个""空格 , 转换成String型
//TreeSet泛型能保证重复的不加入 , 而且有序


str = "";

for(String index:noReapted)
str = index;


//输出
System.out.println (str);


public static void main(String[] args)
DeleteRepeated dr = new DeleteRepeated();

dr.removeRepeated();

参考技术B 参考代码:
import java.util.List;
import java.util.Scanner;

public class DeleteRepeated
private String str;
private TreeSet<String> noReapted;//带有String类型的TreeSet泛型

public DeleteRepeated()
Scanner in = new Scanner(System.in);

System.out.println ("输入一个字符串:");
str = in.nextLine();

noReapted = new TreeSet();


//清楚重复的数据
public void removeRepeated()
for (int i = 0; i < str.length(); i++)
noReapted.add(""+str.charAt(i));
//str.charAt(i)返回的是char型 所以先加一个""空格 , 转换成String型
//TreeSet泛型能保证重复的不加入 , 而且有序


str = "";

for(String index:noReapted)
str += index;


//输出
System.out.println (str);


public static void main(String[] args)
DeleteRepeated dr = new DeleteRepeated();

dr.removeRepeated();

本回答被提问者采纳

以上是关于如何删除重复字符c语言的主要内容,如果未能解决你的问题,请参考以下文章

如何在c++的字符串中删除某个字符串

纠错:C语言:删除重复字符。

C语言删除多余字符

C语言如何删除已输出字符的最后一个

★c语言★如何删除字符串中的第一位?★

c语言如何判断一个数组中重复元素的个数,并输出这个个数的值?