Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
VladosLancer
1 / 1 / 0
Регистрация: 03.10.2011
Сообщений: 96
#1

Переделать программу для работы со строками - C++

18.01.2013, 12:01. Просмотров 210. Ответов 0
Метки нет (Все метки)

Здравствуйте. Вот условие:
Дана строка текста, в которой слова разделены запятыми и двоеточиями. Необходимо:
а) оределить количество слов в строке и вывести на экран каждое нечетное слово;
б) определить, сколько слов в строке имеют максимальную длину;
в) определить, есть ли в данной строке повторяющиеся слова, и вывести их на экран.

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
40
41
42
43
44
45
46
47
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
int main(void)
{
    static char delim[] = ",:";
    static char psz[256] = "one,two:one:four,three:six:nine,three,nine:ten";
 
    int nwords = 0;
    for (int i = 0; i < strlen(psz); i++)
        if (psz[i] == delim[0] || psz[i] == delim[1])
            nwords++;
 
    printf("Kolichestvo slov v stroke = %d\n\n",nwords);
 
    int index = 0;
    static char** words = new char*[nwords];
    for (char* token = strtok(psz,delim); 
        token != NULL; token = strtok(NULL,delim))
    {
        if (index % 2) printf("%d.Nechtnoe slovo: %s\n",index,token);
        words[index] = new char[256];
        strcpy(words[index++],token);
    }
 
    printf("\n");
 
    int max = 0;
    for (int q = 0; q < nwords; q++)
        if (strlen(words[q]) > strlen(words[max]))
            max = q;
 
    int count = 0;
    for (int m = 0; m < nwords; m++)
        if (strlen(words[m]) == strlen(words[max]))
            count++;
 
    printf("Kolichestvo max slov: %d\n\n",count);
 
    for (int z1 = 0; z1 < nwords; z1++)
        for (int z2 = z1+1; z2 < nwords; z2++)
            if (!strcmp(words[z1],words[z2]))
              printf("%d.Povtor slova: %s\n",z1,words[z1]);
 
    return 0;
}
Программа работает с данной строкой, разбивая её по словам и занося каждое слово в отдельную строку. Нужно переделать так, чтобы она не заносила каждое слово в отдельную строку, а все действия производила в одной, первоначальной строке, в которой записаны наши слова. И ещё надо осущевтсить ввод слов с клавиатуры. Помогите, пожалуйста, реализовать. Заранее спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.01.2013, 12:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Переделать программу для работы со строками (C++):

Переделать программу работы с массивом для работы с вектором - C++
помогите переделать эту программу!!...при одном условии....вот что находится между int main() и return 0; сохранить.....здесь нужно...

Объясните программу работы со строками - C++
Объясните подробно, пожалуйста, что тут написано string s; cout « &quot;Vvedite stroku: &quot;;cin » s; int i,j; for (i=s.length()-1;i&gt;0;i--)...

Переделать программу работы с базой заказчиков с помощью двусвязного списка - C++
Задача сделана при помощи структур... Необходимо реализовать её при помощи Двусвязного списка на конец... Помогите пожалуйста,...

ВопросЫ по функциям для работы со строками с++ - C++
Вот я нашел большинство (если не все) стандартные функции C++ для работы со строками: Я вычитал что функция memcpy копирует за такт...

Создать дерево для работы со строками - C++
организовать функции инициализации дерева, добавления/удаления элементов/веток дерева, вывода на экран как это все сделать? сам пытался -...

Создать класс для работы сo строками - C++
Создать класс для работы сo строками. Разработать элементы класса: a. Поля: * указатель на char - хранит адрес динамически выделенной...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.01.2013, 12:01
Привет! Вот еще темы с ответами:

Класс для работы со строками CString - C++
Написать текстовый редактор с параметрами 1. Вставка в начало 2. Копирование строк 3. Поиск в строке Мне непонятна одна вещь: как...

Реализовать класс для работы со строками - C++
Пожалуйста помогите с заданием Необходимо реализовать класс TString. В процессе выполнения задания нельзя пользоваться классом...

Разработать класс String для работы со строками - C++
/*Разработать класс String для работы со строками. Класс должен содержать: - Конструктор по умолчанию, позволяющий создать строку...

Каков современный подход для работы со строками - C++
Здравствуйте, хотел узнать современный подход для работы со строками. В С++ так же используется библиотека #include &lt;string&gt;, а методы для...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.