问题:实现删除字符串中连续的重复字符(不包括字母和数字)。 输入为字符串,将字符串中连续重复的,非字母和数字的字符删去,然后输出处理后的字符串。要求用指针指向输入的字符串进行操作。
要求:输入字符串最长50个字符,只输出处理后的字符串。
比如:输入:3+++7==10
输出3+7=10
麻烦各位大神帮忙解决,谢谢!
问题:实现删除字符串中连续的重复字符(不包括字母和数字)。 输入为字符串,将字符串中连续重复的,非字母和数字的字符删去,然后输出处理后的字符串。要求用指针指向输入的字符串进行操作。
要求:输入字符串最长50个字符,只输出处理后的字符串。
比如:输入:3+++7==10
输出3+7=10
麻烦各位大神帮忙解决,谢谢!
#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;
}