Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- int stripDupes(char* s); // объявляем прототип функцию
- main()
- {
- char ch[]="psssrossgrsasssssms";
- stripDupes(ch);
- puts(ch);
- }
- int stripDupes(char* s)
- {
- int i, k=0;
- for(i = 1; s[i] != '\0'; ++i) // Поиск от 0 до конца строки \0
- {
- if (s[i] == s[i-1]) // Поиск первого повтора
- {
- k = i; // Сохраняет индекс найденного повтора
- break; // Выпрыгивает из цикла
- }
- }
- if(k==0) // если нет повтора, то
- return 0; // вылет из функции с 0
- int j = k - 1;
- for(i = k; s[i] != '\0'; ++i) // Копирование символов от первого повтора до конца строки \0
- {
- if (s[j] != s[i]) // если символ не равен предыдущему, то копируем его
- j++;
- s[j] = s[i];
- }
- s[j+1] = '\0'; // Дописываем конец строки
- return j;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement