这是我的,不知道哪儿错了。求大神指教
#include <stdio.h>
#include <string.>
int main()
{
char str[80];
int j,len,i=0;
printf("input:");
gets(str);
len=strlen(str);
char c=str[i];
while(c!='\0')
{
for(j=1;str[j]!='\0';j++)
{
if(str[j]==c)
{
for(;str[j]!='\0';j++)
str[j]=str[j+1];
len--;
}
else
{
c=str[j];
i++;
}
}
}
puts(str);
getchar();
}
注意是C语言,不是C++,C#
如果输入 sahkhfaaa
输出为 sahkfa 啊。
话说我刚才在给你调试,找出问题所在了。。。。
if语句里加一句j--
因为删除一个字符,原来 j 指示的字符前移了一位
话说天地良心哪