统计行数、单词数与字符数(C语言)

来源:互联网 发布:java基础教程 毕向东 编辑:程序博客网 时间:2024/05/16 00:39
 

程序用于统计行数、单词数与字符数。这里对单词的定义比较宽松,它是任何其中不包含空格,制表符或换行符的字符序列

#include <stdio.h>

#define IN   1  /* inside a word */

#define OUT  0  /* outside a word */

 

int   main()

   {

       int c, nl, nw, nc, state;

       state = OUT;

       nl = nw = nc = 0;

       while ((c = getchar()) != EOF) {

           ++nc;      //characters

           if (c == '\n')

               ++nl;     //rows

           if (c == ' ' || c == '\n' || c == '\t')

               state = OUT;

           else if (state == OUT) {

               state = IN;

               ++nw;     //words

           }

       }

       printf("%d %d %d\n", nl, nw, nc);

   }

转自K&R的《c程序设计语言》

原创粉丝点击