谁能帮我解答一下这个C语言变量类型冲突问题?

先上代码

#include <stdio.h>
#include <ctype.h>
#include <stdbool.h>
double _COUNT_LETTERS_AND_WOEDS(void);
int main(void)
{
     printf("%5f \n",_COUNT_LETTERS_AND_WORDS());
     return 0;
}
double _COUNT_LETTERS_AND_WORDS(void)
{
    char ch;
    double words = 0;
    double letters = 0;
    bool inword = false;
    while((ch = getchar()) != EOF)
    {
        if((!isspace(ch) && !inword) && !ispunct(ch))
        {
            words++;
            inword = true;
        }
        if((isspace(ch) && inword) && ispunct(ch))
        inword = false;
        if(!isspace(ch) && !ispunct(ch))
        letters++;
    }
    return letters/words;
}

这是一个计算字符与单词的程序 函数返回每个单词的平均字符数。
图片说明
我不太明白那个报错函数类型冲突是为什么?还有函数的隐式声明?

第四行 , 把 double _COUNT_LETTERS_AND_WOEDS(void); 改成 double _COUNT_LETTERS_AND_WORDS (void);

这里是你打错了, WORDS 打成了 WOEDS;

再把定义里的(第12行)括号里的 void 删掉。

这部分有些编译器会报错,提示你参数出错。

以上

_COUNT_LETTERS_AND_WO E DS

E -》R

调用的函数的声明错误了,导致主函数调用的时候调用的是另一个函数,但是这个函数又没有定义

第四行函数声明和后面的函数调用不是一个函数,调用的函数没有被声明