Я пишу код, чтобы удалить повторяющееся появление символа в строке.Повторяющийся символ в строке
Описание: -Удалить повторяющиеся символы из строки
Пример: -
Пример входных = abcdeabd
Пример вывода = ABCDE
Я написал код и он работает, и когда я тестировал, выполнив тестовые образцы, это проходит большинство тестов, но не удается некоторые, например, когда я использую строку ввода, как «abcdabcdabcdabcd» Это дает мне abcdd как выход вместо «ABCD»
Вот мой код
#include<stdio.h>
int main(void)
{
char a[60]="abcdeabd";
int n=0;
for(int l=0;a[l]!='\0';++l)
++n;
printf("%d\n",--n);
for(int i=0;i<=n;++i)
{
for(int j=i+1;j<=n;++j)
{
if(a[i]==a[j])
{
for(int k=j;k<=n;++k)
a[k]=a[k+1];
--n;
}
}
}
puts(a);
return 0;
}
Пожалуйста, скажите мне, где я неправильно с этим кодом. ..?
может не вы-то, что у вас есть, чтобы избежать два для петель? –
Что вы просите меня сделать именно так? – Patel
Без чтения кода я думаю, что вы не смогли удалить последний символ, если он повторен. – idstam