這里運用了fgetc:int fgetc(FILE *stream)?
逐個讀取文檔中的字符,其中flag 表示前一個字符是否為空获洲,僅前一個字符為空且當(dāng)前字符不為空時單詞個數(shù)加1提茁。
代碼
#include <stdio.h>
int main(int argc,char** argv){
FILE* fp1;
int c,chars=0,lines=0,words=0,flag=1;
fp1=fopen(argv[1],"r");
while((c=fgetc(fp1))!=EOF){
chars++;
if(c=='\n')
lines++;
if(c=='\n'||c=='\t'||c==' '){
flag=1;
}else if(flag==1){
words++;
flag=0;
}
}
printf("%s:\nlines:%d characters:%d words:%d\n",argv[1],lines,chars,words);
fclose(fp1);
return 0;
}