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

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

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

Определить количество слов, начинающихся с буквы "T" - C++

21.06.2016, 11:51. Просмотров 272. Ответов 5
Метки нет (Все метки)

Ввести текст. Слова разделены пробелами или запятыми, предложения заканчиваются знаками препинания. Длина текста может быть выбрана любой. Определить количество слов, начинающихся с буквы "T". после завершения программы ошибка "Debug Assertion Failed!" как исправить?
int main()
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
{
    setlocale(0, "RUS");
    char str[10];
    cout << "Введите вашу строку: \n";
    cin.getline(str,10); //считывает строку с клавиатуры
    //system("cls"); // очистка экрана clear screen
    cout << "Ваша строка: \n" << str;
        int numberWord = 0;
        bool InWord = false;
 
        for (int i(0); i<=10; i++)
        {
            if (isalpha(str[i]) && !(InWord)) //isalpha  если текущий символ строки буква
            {
                InWord = true;
                numberWord++;   //если в слове, счетчик увеличивается 
                
            }
            if (!isalpha(str[i]))  // если символ НЕ буква 
                InWord = false; //возвращаем значение false 
            cout << "количество слов в тексте: " << numberWord << '\n';
        }
    system("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.06.2016, 11:51     Определить количество слов, начинающихся с буквы "T"
Посмотрите здесь:

C++ найти количество слов в которых две или больше буквы "с"
C++ Найти количество слов начинающихся на букву "а"
Дан текст, определить количество слов "кот" C++
C++ Ввести имя фамилию и отчество как одно данное типа строка. Определить длину строки и количество гласных в нем. Удалить все буквы "а" и "о" в фамилии.
C++ Определить количество слов, которые содержат ровно четыре буквы "о", "О"
Подсчитать количество слов, начинающихся с буквы 'а' C++
C++ В тексте определить количество слов с буквой "О" и отобразить их
C++ Определить количество слов в предложении, заканчивающихся на букву "я"
C++ Определить количество слов в предложении, заканчивающихся на букву "я"
C++ Определить, есть ли в тексте слова, начинающиеся и заканчивающиеся с буквы "А", и их количество
C++ В заданной последовательности определить количество слов, начинающихся с указанной буквы
Подсчитать количество слов, содержащих три буквы "c" C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
6115 / 5718 / 1849
Регистрация: 18.12.2011
Сообщений: 14,615
Завершенные тесты: 1
21.06.2016, 12:20     Определить количество слов, начинающихся с буквы "T" #2
У Вас нет 11-го символа (при i=10, str[i] - это 11-й символ)
И, вообще, незачем смотреть все символы
C++
1
for (int i(0); str[i]!=0; i++)
PiedPiper
0 / 0 / 0
Регистрация: 18.03.2016
Сообщений: 16
21.06.2016, 12:58  [ТС]     Определить количество слов, начинающихся с буквы "T" #3
а как это можно реализовать без просмотра всех символов?
1Вирт1
55 / 53 / 5
Регистрация: 25.08.2011
Сообщений: 442
21.06.2016, 13:16     Определить количество слов, начинающихся с буквы "T" #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <cstring>
{
    setlocale(0, "RUS");
    char str[10];
    cout << "Введите вашу строку: \n";
    cin.getline(str,10); //считывает строку с клавиатуры
    //system("cls"); // очистка экрана clear screen
    cout << "Ваша строка: \n" << str;
    int numberWord = 0;
    char *word = strtok(str, " ,.?!-");
    while (word != nullptr)
        {
        if (strlen(word) >= 1 && word[0] == "Т")
            ++numberWord;
        word = strtok(str, " ,.?!-");
        }
    cout << "количество слов в тексте: " << numberWord << '\n';
    system("pause");
    return 0;
}
PiedPiper
0 / 0 / 0
Регистрация: 18.03.2016
Сообщений: 16
21.06.2016, 13:26  [ТС]     Определить количество слов, начинающихся с буквы "T" #5
вот что в ходе компиляции
error C4996: 'strtok': This function or variable may be unsafe. Consider using strtok_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS.
1Вирт1
55 / 53 / 5
Регистрация: 25.08.2011
Сообщений: 442
21.06.2016, 13:56     Определить количество слов, начинающихся с буквы "T" #6
ну дак Вам же дана подсказка
замените на strtok_s. Можно переписать через string, словом способов очень много
Yandex
Объявления
21.06.2016, 13:56     Определить количество слов, начинающихся с буквы "T"
Ответ Создать тему
Опции темы

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