Программирование с использованием строкового типа - C (СИ)
Формулировка задачи:
Подскажите как задать условие чтобы программа считала количество слов в строке которые начинаются на "av"
Решение задачи: «Программирование с использованием строкового типа»
textual
Листинг программы
#include <stdio.h> #include <string.h> int main(void) { char str[] = "как задать условие чтобы программа считала количество слов в строке которая начинаются на "av""; char *slovo = strtok(str, " "), alp[] = "av"; int iCount = 0;//кол-во слов начинающиеся с av while (slovo != NULL) { if (strstr(slovo, alp) == slovo) iCount++; puts(slovo); slovo = strtok(NULL, " "); } printf("%d", iCount); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы со строками и вводом-выводом
- Объявление переменной
str
типаchar
и инициализация её значениемкак задать условие чтобы программа считала количество слов в строке которая начинаются на «av»
- Объявление переменной
slovo
типаchar*
и инициализация её значением первым словом в строкеstr
, используя функциюstrtok
- Объявление переменной
iCount
типаint
и инициализация её значением 0, которая будет считать количество слов в строке, начинающихся наav
- В цикле
while
происходит проверка, не равно ли значениеslovo
нулю, что означает окончание строки - Внутри цикла проверяется, содержит ли текущее слово подстроку
av
, при этом сравнивается адрес подстроки с адресом текущего слова - Если подстрока найдена, то переменная
iCount
увеличивается на единицу - После проверки, текущее слово выводится на экран с помощью функции
puts
- После вывода слова, функция
strtok
вызывается снова, передавая в неё значениеNULL
и пробел в качестве разделителя, чтобы получить следующее слово в строке - После завершения цикла, выводится значение переменной
iCount
с помощью функцииprintf
- Возвращается 0, что означает успешное завершение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д