Форум программистов, компьютерный форум CyberForum.ru

Строки - C++

Восстановить пароль Регистрация
 
Mashylya1
0 / 0 / 0
Регистрация: 23.10.2011
Сообщений: 17
13.11.2011, 22:02     Строки #1
помогите с задачкой:Дана строка. Заменить в ней каждую из групп, содержащих 3 или более одинаковых символов многото-чием (т.е. тремя точками). Строку должен ввести пользователь с клавиатуры, а в ответ должна выйти уже готовая строка(с многоточием).

Добавлено через 5 минут
решение нужно на Си
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.11.2011, 22:02     Строки
Посмотрите здесь:

Даны две строки. Получить строку, в которой чередуются слова первой и второй строки C++
Строки. Вывести на печать то слово этой строки, которое по алфавиту предшествует всем другим C++
C++ .Упорядочить строки матрицы по убыванию значений произведений наименьшего и наибольшего элементов каждой строки
C++ Если строки одинаковы, объединить две строки, исключив из второй первые десять символов
C++ В динамической матрице целых чисел добавить строки после строки, содержащей простое число
C++ Определить, верно ли утверждение: сумма элементов каждой i-й строки матрицы больше суммы (i-1)-й строки
C++ Определить, верно ли утверждение: сумма элементов каждой i-ой строки матрицы больше суммы (i-1)-ой строки
C++ Определить, верно ли утверждение: сумма элементов каждой i-й строки матрицы меньше суммы (i-1)-й строки

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Net_Wanderer
235 / 208 / 19
Регистрация: 08.06.2011
Сообщений: 467
13.11.2011, 22:41     Строки #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <stdio.h>
 
#define MAXLINE 1000
 
char *replace_groups(char *s, int num, char c);
 
int main()
{
    char line[MAXLINE];
 
    while (printf("enter a line:\n") > 0 
        && fgets(line, MAXLINE, stdin) && *line != '\n'
        && printf("%s", replace_groups(line, 3, '.')) > 0)
        ;
    return 0;
}
 
char *replace_groups(char *s, int num, char c)
{
    char *t, *beg = s;
    int i, shift;
 
    while (*s != '\0') {
        for (shift = 1, t = s; *t == *(t + 1); t++)
            shift++;
        if (shift >= num) {
            for (i = 0; i < num; i++)
                *s++ = c;
            if ((shift -= num) == 0)
                continue;
            t = s;
            do {
                *t = *(t + shift);
            } while (*t++);
        } else
            s++;
    }
    return beg;
}
Mashylya1
0 / 0 / 0
Регистрация: 23.10.2011
Сообщений: 17
13.11.2011, 22:49  [ТС]     Строки #3
Спасибо Вам большое!
Yandex
Объявления
13.11.2011, 22:49     Строки
Ответ Создать тему
Опции темы

Текущее время: 00:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru