裁判函数:
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int CountWord(FILE *f);
int main()
{
FILE *f;
int n;
f = fopen("Story.txt", "r");
if (!f)
{
puts("文件无法打开!");
exit(1);
}
n = CountWord(f);
if (fclose(f))
{
puts("文件无法关闭!");
exit(1);
}
printf("单词数: %d\n", n);
return 0;
}
/* 你提交的代码将被嵌在这里 */
答案函数:
这种if-elseif的结构判断可以帮助我们对连续字母判断成单词
int CountWord(FILE *f) {
int cnt = 0, flag = 0;
char ch;
while(!feof(f)) {
ch = fgetc(f);
if(ch == EOF) break;
if(!isalpha(ch)) {
flag = 0;
}else if(flag == 0) {
flag = 1;
cnt++;
}
}
return cnt;
}