0 / 0 / 0
Регистрация: 04.12.2016
Сообщений: 47
1

Подсчитать количество вхождений слова «мама» в строку и вывести номера первых позиций этих вхождений

09.06.2017, 00:11. Показов 2220. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите исправить ошибку. Как вывести номера первых позиций вхождений слова мама?
Подсчитать количество вхождений слова «мама» в строку и вывести номера первых позиций этих вхождений. Если этого слова в строке нет, то вывести об этом информацию.

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
#include "stdafx.h"
#include "windows.h"
#include "iostream"
#include "string.h"
 
int main()
{
setlocale (LC_ALL,"RUS");
int n=0;
char s[100];
printf ("Введите строку\n");
gets(s);
char *p=s;
while(*p)
{
p=strstr( p, "mama");
if(p==NULL) break;
n++;
p++;
}
printf("Номер позиции %d\n", p);
printf("Номер позиции = %d\n", n);
system("pause");
return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.06.2017, 00:11
Ответы с готовыми решениями:

Подсчитать количество вхождений слова "мама" в строку и вывести номера первых позиций этих вхождений
Не выводит номер позиции. Помогите пожалуйста Подсчитать количество вхождений слова «мама» в...

подсчитать количество вхождений слова в строку.
Нужно посчитать количество слов в строке. Например, строка: мама папа мама , вводим слово мама, он...

Подсчитать количество вхождений заданного слова в строку
Если вкратце то нужно в эту прогу добавить программу которая выведет сколько раз я ввел конкретное...

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

2
Software Developer
315 / 229 / 113
Регистрация: 03.05.2017
Сообщений: 1,330
09.06.2017, 00:35 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
#include "stdafx.h"
#include <windows.h>
#include <iostream>
#include <cstring>
 
bool find_str_in_str (char * buff, char * str, int n)
{
    for (int i = n, j = 0; i < n + strlen (str), j < strlen (str); i ++, j ++)
         if (buff [i] != str [j])
              return false;
    return true;
}
 
int main ()
{
    setlocale (LC_ALL, "RUS");
    char str [256];
    printf ("Введите строку\n");
    gets (str);
    int count = 0;
    for (int i = 0; i < strlen (str); i ++)
         if (find_str_in_str (str, "mama", i))
         {
              if (!count)
                   std::cout << "Номера первых позиций вхождений слова mama: ";
              std::cout << i << ", ";
              count ++;
         }
    
    if (count != 0)
         printf ("Количество вхождений = %d\n", count);
    else
         printf ("Слова в строке нет\n");
    
    system ("pause");
    return 0;
}
2
Диссидент
Эксперт C
27706 / 17322 / 3812
Регистрация: 24.12.2010
Сообщений: 38,979
09.06.2017, 00:47 3
olaaa, Одна из ваших ошибок, что переменная p у вас объявлена как указатель, а в других местах вы пытаетесь ее трактовать как целое число.
И вообще, весь предъявленный код говорит о полной беспомощности и незнании основ

Добавлено через 3 минуты
ЗЫ. Если вам нужно только "сдать и забыть", вполне можете воспользоваться кодом уважаемого decrement, который производит благоприятное впечатление.
1
09.06.2017, 00:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.06.2017, 00:47
Помогаю со студенческими работами здесь

Вывести строку из файла и количество вхождений слова
Нужно написать программу, которая считывает текст из файла и выводит его на экран, после каждого...

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

Определить количество вхождений S3 вхождений в строку S1
Здравствуйте. Помогите, пожалуйста, решить задачу: Ввести строку S1 c помощью оператора readln....

Подсчитать количество вхождений определенного слова
Доброго времени суток, представлю свой код, к которому нужно дописать функцию поиска слова в...


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

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

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