Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 13.11.2010
Сообщений: 8
1

Удалить подряд идущие вхождения слов в предложениях

09.12.2010, 22:14. Показов 1446. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дана строка, содержащая текст на русском языке. В предложениях некоторые из слов записаны подряд несколько раз (предложение заканчивается точкой или знаком восклицания). Получить в новой строке отредактированный текст, в котором удалены подряд идущие вхождения слов в предложениях.

Помогите, пожалуйста разобраться с задачкой, я что-то совсем запуталась, вот мой вариант, но работает неверно.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
#include <string.h>
 
int main()
{
    char str1[1024], *str, *str3;
    fgets (str1,1024,stdin);
    str=strtok(str1, " ");
    while (str){
        str3=strtok(NULL, " ");
        if (*str!=*str3)
        printf ("%s ", str);
        str=strtok(NULL, " ");
    }
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.12.2010, 22:14
Ответы с готовыми решениями:

Удалить из строки подряд идущие цифры
не могу разобраться со строками в си... я новичок.

Удалить одинаковые слова предложения, идущие подряд
Удалить одинаковые слова предложения, идущие подряд. с коментариями пожалуйста

Удалить одинаковые слова предложения, идущие подряд
Здравствуйте! Задание такое: удалить одинаковые слова предложения, идущие подряд. Набросал код, но...

Удалить подряд идущие пробелы, не используя библиотеку string
Удалить подряд идущие пробелы не используя библиотеку string.h Пример реализации: #include...

2
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
09.12.2010, 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
#include <stdio.h>
#include <string.h>
int main ()
{
    char str [300];
    char newStr [300];
    char sep [] = {' ', ',', '.'};
    char * p = NULL;
    char * prev = NULL;
    newStr [0] = '\0';
 
    gets (str);
 
    p = strtok (str, sep);
    prev = "";
    while (p != NULL)
    {
        if (strcmp (prev, p) != 0)
        {
            strcat (newStr, p);
            strcat (newStr, " ");
        }
        prev = p;
        p = strtok (NULL, sep);
    }
    puts (newStr);
    p = prev = NULL;
    return 0;
}
1
0 / 0 / 0
Регистрация: 13.11.2010
Сообщений: 8
10.12.2010, 00:10  [ТС] 3
Спасибо вам большое, вы мне очень помогли, теперь все понятно
0
10.12.2010, 00:10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.12.2010, 00:10
Помогаю со студенческими работами здесь

Определение количества слов, в которых встречаются подряд идущие одинаковые буквы
Здравствуйте! Помогите пожалуйста разобраться с заданием на тему :&quot;функции с переменным числом...

В символьной строке удалить все лишние подряд идущие пробелы
Помогите написать программу. Все изменения строки производить в том же массиве. Не допускается...

В символьной строке удалить все слова, содержащие две подряд идущие гласные буквы
Здравствуйте, помогите пожалуйста напрсать программу, сам вообще ноль :( Условие: В символьной...

Удалить из списка слов все предыдущие вхождения последнего слова
Здравствуйте, помогите доделать программу, у меня получилось считать строку, разбить на слова, даже...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru