c语言如何删除字符串中相同字符

   2025-02-22 5970
核心提示:要删除字符串中的相同字符,可以使用两层循环来遍历字符串,并比较每个字符是否与后面的字符相同。如果相同,则将后面的字符删除

要删除字符串中的相同字符,可以使用两层循环来遍历字符串,并比较每个字符是否与后面的字符相同。如果相同,则将后面的字符删除,直到字符串末尾。

以下是一个示例代码:

#include <stdio.h>#include <string.h>void removeDuplicates(char *str) {int len = strlen(str);for (int i = 0; i < len; i++) {for (int j = i + 1; j < len; j++) {if (str[i] == str[j]) {// 将后面的字符往前移动一位for (int k = j; k < len - 1; k++) {str[k] = str[k+1];}len--;  // 字符串长度减1j--;    // 继续比较当前位置的字符}}}}int main() {char str[100];printf("请输入一个字符串:");scanf("%s", str);removeDuplicates(str);printf("删除相同字符后的字符串为:%s\n", str);return 0;}

这个示例代码中的函数 removeDuplicates() 可以接受一个字符串参数,并通过两层循环来删除其中的相同字符。在主函数中,首先要求用户输入一个字符串,然后调用 removeDuplicates() 函数将相同字符删除,并最终输出结果。

请注意,这个示例代码只能删除连续相同的字符,对于非连续相同的字符无法删除。如果需要删除非连续相同的字符,可以使用其他算法或数据结构来解决。

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言