#include <iostream>
#include <locale.h>
#include <cstdlib>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
char s[999];
int k;
char b;
char B;
cout << "Ввeдите текст:" << endl;
cin.getline(s, 999);
cout << "Ввeдите букву:" << endl;
cin >> b;
cout << "Ввeдите букву(заглавную):" << endl;
k = 0;
cin >> B;
for(int i = 0; i< 999; i++){
if (s[i] == ' ')
{
if (s[i+1] == B || s[i+1] == b)
{
k++;
}
}
}
cout << "Количество слов, начинающихся на вашу букву:" << k << endl;
system("pause");
}
язык программирования C++
если я молодей сделай лучшим ответом и поставь лайк :3333
C/C++
Задан текст. Определить, сколько слов начинается на заданную букву.
Александр Тихонов
если что язык русский
#include
#include
#include
// Функция выделяет слово из строки s начиная с позиции pos и сохраняет его
// в строке word. Возможна генерация исключения std::bad_alloc
// Возвращает индекс начала следующего поля или std::string::npos
// если выделять больше нечего
size_t get_word( const std::string& s, std::string& word, size_t pos );
// Сканирует файл fname и записывает количество слов, начинающихся на
// строку filter по ссылке wcount
void scan_file( char* fname, std::string& filter, unsigned long& wcount );
size_t get_word( const std::string& s, std::string& word, size_t pos )
{
size_t idx;
size_t start_idx;
// Символы разделители полей в строке
const char* delim = " \t";
// Очистим слово от мусора
word.clear();
// Найдем первый символ, не являющийся разделителем,
// начиная с позиции pos
idx = s.find_first_not_of( delim, pos );
if( idx != std::string::npos )
{
// Сохраним индекс начала слова
start_idx = idx;
// Найдем первый символ-разделитель
idx = s.find_first_of( delim, idx );
// Было ли это последним полем в строке?
if( idx == std::string::npos )
{
// Сохраним найденное слово
word.assign( s, start_idx, s.length()-start_idx );
}
else
{
// Сохраним найденное слово
word.assign( s, start_idx, idx-start_idx );
}
}
return idx;
}
void scan_file( char* fname, std::string& filter, unsigned long& wcount )
{
std::string s;
std::string w;
size_t pos;
std::ifstream ifs(fname);
if(ifs.is_open())
{
while( ifs.good() )
{
std::getline( ifs, s );
if( s.empty() ) continue;
pos = 0;
while( pos != std::string::npos )
{
pos = get_word( s, w, pos );
if( w.compare(0, filter.length(), filter) == 0 ) wcount++;
}
}
ifs.close();
}
else
{
std::cerr
Виктор Широков
Программа сканирует произвольное количество файлов, имена которых заданны в командной строке на наличие слов, начинающихся на строку с фильтром, заданную в первом аргументе командной строки.
Исходный файл test.txt со словами:
Исходный файл test.txt со словами:
Слово1 не_то_слово1 Слово2
Слово3 Слово4 не_то_слово2
Пример использования: ./app 'С' test.txt
Количество слов, начинающихся c 'С': 4
Язык Си. Язык английский. Кодировка однобайтовая для английского языка.
#include
#include
#ifdef SIZE
#undef SIZE
#endif
#define SIZE 1000
int main()
{
char text[SIZE] = "Moscow is a capital of Russian Federation. Washington is a capital of United States of America. London is a capital of Great Bretany.";
int count = 0;
int i = 0;
int c, d;
printf("Zadannyj text: %s\r\n",text);
do
{
printf("Kakaja bukva? ");
c = getchar();
}while(!((c >= 'a' && c = 'A' && c = 'a' && d = 'A' && d = 'a' && text[i] = 'A' && text[i]
Похожие вопросы
- Определить встречается ли в последовательности группа букв 'one', определить последнее вхождение этой группы
- Для заданных с клавиатуры значений переменных x и n вычислить
- Программа интерполяции таблично заданной функции
- Задача на проверку попадания точки в заданную область в С++
- Написать программу, которая по введенному значению аргумента вычисляет значение функции, заданной в виде
- Выбрать из текста слова, в которых имеются удвоенные согласные буквы
- Задан одномерный массив целых чисел создать код на C++
- Написать программу на С++ определения площади пятиугольника с заданными координатами его вершин.
- Задан целочисленный массив размера N. Определить число элементов в массиве кратных 2.
- Вычислить для заданного значения ? сумму вида.