Подсчет количества слов, начинающихся с заданной буквы - C (СИ)
Формулировка задачи:
Вот программа, которая обрабатывает последовательность символов, и если новое слово начинается с k то счетчик++. но у меня оператор switch не хочет присваивать значение 1 переменной razdel (если символ-разделитель)
<code>
</code>
и если добавить printf ("%d",razdel) после свитч, можно увидеть, что даже когда вводишь пробел то значение разделителя остается 0.
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #include <conio.h>
- #define DA 1
- #define NET 0
- int main()
- {
- int razdel, nextSym,sym,kol;
- kol=0;
- sym=getchar();
- while ((nextSym=getchar())!=EOF)
- {
- switch ( sym )
- {
- case ' ':
- {razdel=DA;}
- case '\n':
- {razdel=DA;}
- case '\t':
- {razdel=DA;}
- default:
- {razdel=NET;}
- }
- printf ("%d",razdel);
- if ((razdel==DA) && (nextSym=='k'))kol++;
- sym=nextSym;
- }
- printf ("%d\n",kol);
- printf ("Good job, very good job...");
- return 0;
- }
Решение задачи: «Подсчет количества слов, начинающихся с заданной буквы»
textual
Листинг программы
- switch ( sym )
- {
- case ' ':
- razdel=DA;
- break;
- case '\n':
- razdel=DA;
- break;
- case '\t':
- razdel=DA;
- break;
- default:
- razdel=NET;
- }
Объяснение кода листинга программы
В данном коде на языке C выполняется следующая задача — подсчет количества слов, начинающихся с заданной буквы. Приведенный код реализует функцию, которая принимает на вход символ и в зависимости от его значения устанавливает переменную razdel
в одно из двух возможных значений — DA или NET.
Список изменений, которые происходят в коде:
- В случае если символ равен пробелу, переменной
razdel
присваивается значение DA. - В случае если символ равен символу новой строки (перевод строки), переменной
razdel
присваивается значение DA. - В случае если символ равен табуляции (символTab), переменной
razdel
присваивается значение DA. - Во всех остальных случаях переменной
razdel
присваивается значение NET. Обратите внимание, что в данном коде не учитываются знаки препинания и цифры. Для корректного подсчета слов, начинающихся с заданной буквы, необходимо добавить дополнительные условия, которые будут учитывать эти случаи.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д