c语言实现删除操作的方法

问题:实现删除字符串中连续的重复字符(不包括字母和数字)。 输入为字符串,将字符串中连续重复的,非字母和数字的字符删去,然后输出处理后的字符串。要求用指针指向输入的字符串进行操作。

要求:输入字符串最长50个字符,只输出处理后的字符串。

比如:输入:3+++7==10

输出3+7=10

麻烦各位大神帮忙解决,谢谢!

之前的回答 https://ask.csdn.net/questions/769884 是否解决了,如果没有请留言,解决请采纳

#include <stdio.h>
#include <stdlib.h>
void deldup(char * s)
{
    int dp = 0;
    for (int i = 0; i < strlen(s); i++)
    {
        if (s[i] != s[dp])
            s[++dp] = s[i];
    }
    s[++dp] = '\0';
}

int main()
{
    char s[51];
    scanf("%s", &s[0]);
    deldup(s);
    printf("%s", s);
    return 0;
}