文件/io计数单词有些偏离
我必须计算3个文件的单词。结果应该是 138、166、148,但它们是138、165、147。有人可以解释/帮助吗?
int countwords(const char* filename) {
char z;
int inw = 0;
int words = 0;
FILE *ed;
ed = fopen(filename, "r");
while ((z = fgetc(ed)) != EOF ){
if (z == ' ' || z == '\n' || z == '\t' || z == '\0') {
if(inw) {
inw = 0;
words++;
}
} else {
inw = 1;
}
}
fclose(ed);
return words;
}```
i have to count words of 3 files. The results should be
138, 166, 148 but they are 138, 165, 147. Can someone explain/help?
int countwords(const char* filename) {
char z;
int inw = 0;
int words = 0;
FILE *ed;
ed = fopen(filename, "r");
while ((z = fgetc(ed)) != EOF ){
if (z == ' ' || z == '\n' || z == '\t' || z == '\0') {
if(inw) {
inw = 0;
words++;
}
} else {
inw = 1;
}
}
fclose(ed);
return words;
}```
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论