统计字符、单词和行

来源:互联网 发布:添加网络打印机步骤 编辑:程序博客网 时间:2024/05/20 23:36
// wordcount.c 统计字符、单词和行#include<stdio.h>#include<ctype.h>  //为isspace()提供函数原型#define STOP '|'int main(){char c;                          //读入字符char prev;                       //前一个读入字符long n_chars=0L;                 //字符数int n_lines=0;                   //行数int n_words=0;                   //单词数int p_lines=0;                   //不完整行数(|符号后还有字符会产生不完整行)bool inword = false;             //如果c在一个单词中,则inword=tureprintf("Enter text to be analyzed(| to terminate):\n");prev='\n';                       //用于识别完整行,只含有‘|’的行不算作完整行也不算作不完整行while ((c=getchar())!=STOP){n_chars++;                   //统计字符if (c=='\n')              n_lines++;               //统计行if (!isspace(c) && !inword){inword=true;             //开始一个新单词n_words++;           //统计单词}if (isspace(c)&&inword) inword=false;             //到达单词尾部prev=c;                       //保存字符值}if (prev!='\n')p_lines=1;printf("characters=%ld,words=%d,lines=%d,",n_chars,n_words,n_lines);printf("partial lines=%d\n",p_lines);return 0;}

原创粉丝点击