Дана строка символов. Найти и вывести все слова, содержащие более двух букв «a» - C (СИ)
Формулировка задачи:
Задание-> Дана строка символов. Найти и вывести все слова, содержащие более двух букв «a».
Помогите пожалуйста с кодом на языке СИ ( используя scanf,getchar,putchar ну и всё остальное само собой)
Решение задачи: «Дана строка символов. Найти и вывести все слова, содержащие более двух букв «a»»
textual
Листинг программы
#include <stdio.h>
#include <string.h>
size_t chcount(const char * str, const char c) {
return ( str = strchr(str, c) ) ? 1 + chcount(str + 1, c) : 0;
}
#define CHAR 'a'
#define MEETINGS 2
#define DELIM " \t\n"
int main(void) {
char buf[BUFSIZ], * p;
while ( printf("String: ") && fgets(buf, BUFSIZ, stdin) && *buf != '\n' )
for ( p = strtok(buf, DELIM); p; p = strtok(NULL, DELIM) )
if ( chcount(p, CHAR) > MEETINGS )
printf("%s\n", p);
return 0;
}