Удалить из строки все двойные символы - C (СИ) (75115)

Узнай цену своей работы

Формулировка задачи:

Дана строка. Удалить из строки все двойные символы. Пример: “asddewwf” → “asdewf”. Помогите пожалуйста разобраться в чем ошибка.
#include <stdio.h>
int main(int argc, char *argv[])
{   char s[255];
    unsigned int i, n;
printf("Vvedite razmer stroki: ");  scanf("%u", &n); n++;   
    printf("Vvedite stroky: \n");   //ввод массива
    {for (i=0; i<n; i++) scanf("%c", &s[i]); }
for (i=1; i<n; i++)
    { while (s[i-1]==s[i]) {s[i]=s[i+1]; break;}}
        //else continue;
        
for (i=0;i<n;i++) printf("%c", s[i]);           //вывод ответа
printf("\n");
    return 0;
}

Решение задачи: «Удалить из строки все двойные символы»

textual
Листинг программы
#include <stdio.h>
#include <conio.h>
int main ()
{
    int n, i, j, k, f;
    char m[255];
    clrscr();
 
       printf("Vvedite razmer stroki\n");
       scanf("%d", &n);
       n=n+1;
       printf("Vvedite stroky:\n");
    for(i=0; i<n; i++)
    {
    scanf("%c", &m[i]);
    }
 
    printf("Do:\n");
    for(i=0; i<n; i++)
    printf("%c", m[i]);
    f=0;
    for(i=0; i<n; i++) {
    for(j=i+1; j<n; j++) {
        if(m[i]==m[j]) {
        for(k=j; k<n; k++)
            m[k]=m[k+1];
        n--;
        f=1;
        }
    }
    }
 
    if(f==1) {
    printf("\nPosle:\n");
    for(i=0; i<n; i++)
        printf("%c ", m[i]);
    }
    getch();
}

Объяснение кода листинга программы

В этом коде удаляются все повторяющиеся символы из строки, введенной пользователем. Вот список действий, которые происходят в коде:

  1. Ввод размера строки от пользователя.
  2. Считывание строки от пользователя.
  3. Вывод строки на экран.
  4. Поиск повторяющихся символов в строке.
  5. Если повторяющиеся символы найдены, то они удаляются из строки.
  6. Вывод измененной строки на экран.
  7. Проверка, были ли удалены повторяющиеся символы.
  8. Если повторяющиеся символы были удалены, то выводится измененная строка.
  9. Получение от пользователя команды для завершения работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4 из 5
Похожие ответы