c语言编写一个程序,统计输入的行数、字符数、字数
//统计单词数量、行数、字符数
#include <stdio.h>
#include <ctype.h>
#include <stdbool.h>
#define STOP '|' //以“|”作为结尾
int main(void){
char ch;
int char_count = 0;
int line_count = 0;
int word_count = 0;
char line_end = '\n';//换行符
char pre_c;//前一个字符
bool inword = true;//单词的开始
int p_lines = 0;//不完整的行
while((ch=getchar()) != STOP){
char_count++;
if(ch==line_end){
line_count++;
}
if(!isspace(ch) && inword){
inword = true;
word_count++;
}
if(isspace(ch) && !inword){
inword = false;
}
pre_c = ch;//保存最后一个值
}
if (pre_c != line_end){
p_lines = 1;
}
printf("总字符数:%d\t",char_count);
printf("总字数:%d\t",word_count);
printf("总行数:%d\t",line_count+p_lines);
}