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

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

Войти
Регистрация
Восстановить пароль
 
vozup
7 / 7 / 0
Регистрация: 25.12.2011
Сообщений: 100
#1

Количество повторений слова в строке - C++

08.01.2014, 16:04. Просмотров 975. Ответов 3
Метки нет (Все метки)

Вот код программы. В роди бы написана правильно, но компилятор выдает "Работа программы завершена!"
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
#include <iostream>
#include <conio.h>
 
using namespace std;
 
int myfind(char* str,char* sub_str)
{
 char temp[64];
 
 int i=0;
 int k;
 int count = 0;
 while(str[i] != '\0')
 {
     memset(temp,0,64);
     k = 0;
     while(str[i] != ' ')
     {
         temp[k] = str[i];
         i++;
         k++;
     }
     if(strcmp(sub_str,temp) == 0) count++;
     i++;
 }
return count;
}
 
int main()
{
    char str[] = "hello he lo lo he hello li hello";
    char sub[] = "hello";
    cout<<str<<endl;
    cout<<myfind(str,sub);
    getch();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.01.2014, 16:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Количество повторений слова в строке (C++):

Как найти количество повторений слова в строке? - C++
Доброго времени суток! Такой вопрос - как найти количество повторений каждого слова в строке? Вот код получения массива слов и их...

Как найти количество повторений слова в строке? - C++
Имеется массив слов. Нужно найти, сколько раз в нем повторяется каждое слово. Пробовал вот так: int cnt = 0; char* find; for (int i =...

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

Определить количество повторений каждого слова - C++
ребят,помогите исправить ошибки пожалуйста,подпрограмма обработки вообще не запускается,не понимаю почему,и можно ли так сравнивать...

Определить количество повторений каждого слова - C++
Помогите пожалуйста с этой программой,я несколько раз пытался делать так:разбивал введенную строку на массивы слова и сравнивал каждое с...

Найти количество повторений слова в тексте - C++
Розробити алгоритм і програму для визначення відсотка повторення заданого слова в тексті (як роздільники слів може використовуватися...

3
rangerx
1937 / 1546 / 141
Регистрация: 31.05.2009
Сообщений: 2,913
08.01.2014, 20:24 #2
Цитата Сообщение от vozup Посмотреть сообщение
while(str[i] != ' ')
Нет защиты от выхода за пределы строки.

Добавлено через 4 минуты
Вообще, подумайте хорошо над алгоритмом, копировать здесь ничего никуда не нужно.
1
vozup
7 / 7 / 0
Регистрация: 25.12.2011
Сообщений: 100
08.01.2014, 21:27  [ТС] #3
while(str[i] != ' ' && i < strle(str) + 1) так работает

Добавлено через 1 минуту
Єтот код сильно плохой?
0
rangerx
1937 / 1546 / 141
Регистрация: 31.05.2009
Сообщений: 2,913
09.01.2014, 12:37 #4
Цитата Сообщение от vozup Посмотреть сообщение
while(str[i] != ' ' && i < strle(str) + 1) так работает
+1 здесь лишний. Собственно как и strle(str)
C++
1
while(str[i] != ' ' && str[i] != '\0')
Цитата Сообщение от vozup Посмотреть сообщение
Єтот код сильно плохой?
Достаточно. Но если исправите следующую ошибку
C++
1
i++; // при s[i] == '\0', перепрыгиваем '\0' и выходим за пределы массива
то в принципе будет работать.
1
09.01.2014, 12:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.01.2014, 12:37
Привет! Вот еще темы с ответами:

Количество повторений каждой буквы в строке - C++
Помогите пожалуйста! Задача: Написать программу, которая считывает строку, считает в ней количество слов и количество повторений каждой...

Определить количество повторений каждого слова в списке - C++
Создать односвязный линейный список из слов некоторого строки, расположив их в списке по алфавиту. Определить количество повторений каждого...

Найти количество повторений каждого слова и удалить дубликаты слов - C++
В строке символов определить количество повторений каждого слова и удалить дубликаты слов. Слова отделяются пробелами. Как реализовать...

Количество повторений элементов заданного множества символов во введенной строке - C++
Ребят ,нужна помощь,как можно переделать эту программу только через указатели? Вот задание на всякий случай: Подсчитать количество...


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

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

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