Необходимо посчитать слова состоящие из 4 букв в строке используя дружественные функции — C++(Си)

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
    
#define MAX_LEN 256
#define SPC " \t\n"
#define CHARS_NEEDED 4
    
int main(void){
    char buf[MAX_LEN], *p;
    size_t cnt;
    
    printf("String: ");
    if ( ! fgets(buf, MAX_LEN, stdin) ){
        perror("fgets");
        exit(1);
    }
    
    cnt = 0;
    for ( p = strtok(buf, SPC); p; p = strtok(NULL, SPC) )
        if ( strlen(p) == CHARS_NEEDED )
            ++cnt;
    
    printf("%d words with length of %d characters\n", cnt, CHARS_NEEDED);
    
    exit(0);
}

Leave a Comment