Строка: Подсчитать количество слов в заданной последовательности. - C (СИ)
Формулировка задачи:
Даны натуральное число n, символы S1, ...,Sn. Группы символов, разделенные пробелами (одним или не-сколькими) и не содержащие пробелов внутри себя, будем называть словами. Подсчитать количество слов в данной последовательности.
Решение задачи: «Строка: Подсчитать количество слов в заданной последовательности.»
textual
Листинг программы
int flag=0, k=0, i; for(i=0; i<n; i++) if (flag==0) { if S[i] == ' ') continue; else { k++; flag = 1; } } else { if (S[i]==' ') flag = 0; } } printf ("%d слов\n");
Объяснение кода листинга программы
- Переменная
flag
инициализируется значением 0. - Переменная
k
инициализируется значением 0. - Переменная
i
не инициализируется, она используется как счетчик в цикле. - Цикл выполняется, пока значение переменной
i
меньше значения переменнойn
. - Внутри цикла проверяется значение переменной
flag
. Если оно равно 0, то выполняется следующий блок кода. - В блоке кода проверяется, равно ли значение переменной
S[i]
значению пробела (' '). Если да, то код пропускает этот пробел и продолжает работу со следующим символом. - Если значение переменной
S[i]
не равно значению пробела, то выполняется следующий блок кода. - В блоке кода переменная
k
увеличивается на 1. - Значение переменной
flag
меняется на 1. - Если значение переменной
flag
равно 1, то выполняется следующий блок кода. - В блоке кода проверяется, равно ли значение переменной
S[i]
значению пробела. Если да, то значение переменнойflag
меняется на 0, чтобы указать на окончание предыдущего слова. - После окончания цикла выполняется команда
printf
, которая выводит количество слов на экран. - Количество слов вычисляется путем вычитания значения переменной
k
из значения переменнойn
. - Команда
printf
выводит строку%d слов\n
, где%d
- это заполнитель, который заменяется на количество слов, аслов
- это текст, который выводится на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д