Текст состоит из слов, разделенных пробелами. Подсчитать количество слов, начинающихся с буквы К - C (СИ)
Формулировка задачи:
Дан текст произвольной длины, оканчивающий точкой. Текст состоит из слов, разделенных проблемами. Подсчитать:
Количество слов, начинающихся с буквы К.
Программу я написал, но осталось сделать цикл с параметром. Суть его такова:
Пока не будет принята точка, он все обрабатывает. Потом, как принялась буква К - в переменную типа boolean записывает 1.
И если после этого будет принят пробел, он прибавляет единицу в счетчике.
Наработки по коду:
Листинг программы
- #include <stdio.h>
- #include <conio.h>
- void main()
- {
- clrscr();
- int num=0;
- char temp, prev;
- do{
- temp = getchar();
- prev = temp;
- if(prev == 'k'){
- temp = getchar();
- if(prev == 'k" && temp == ' ' || prev == 'K' && remp == ' ")
- num++;
- }
- }while(temp !='.');
- printf("Words with 'K' = %d", num);
- printf("\nPress any key!");
- getch();
- }
Решение задачи: «Текст состоит из слов, разделенных пробелами. Подсчитать количество слов, начинающихся с буквы К»
textual
Листинг программы
- #include <stdio.h>
- #include <conio.h>
- int main (void)
- {
- char ch;
- char prev = ' ';
- int count = 0;
- do{
- ch = getchar();
- if((ch == 'k' || ch == 'K') && (prev == ' ' || prev == '\n')){
- count++;
- }
- prev = ch;
- } while(ch != '.');
- printf("Words with 'K' = %d", count);
- printf("\nPress any key!");
- getch();
- return 0;
- }
Объяснение кода листинга программы
В этом коде:
- Вводится символ, который считывается с помощью функции getchar().
- Если текущий символ 'k' или 'K' и предыдущий символ - пробел или конец строки, то увеличивается счетчик.
- Выводится количество слов, начинающихся с буквы 'K'.
- Программа ожидает нажатия любой клавиши для выхода.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д