标签:
P.14单词计数例
#include<stdio.h> #define IN 1 #define OUT 0 /*IN和OUT分别表示在单词内和单词外*/ /*使用define可使程序更明晰,在复杂程序中尤其明显*/ main() { int c,nc=0,nl=0,nw=0,state; //state即单词内、外的状态 /*以上对nc,nl,nw的初始赋值亦可写作‘nc=nl=nw=0’*/ state=OUT; //设初始状态为OUT while((c=getchar())!=EOF) { ++nc; if(c==‘\n‘) ++nl; if(c==‘\t‘||c==‘\n‘||c=‘ ‘) state=OUT; else if(state==OUT) { ++nw; state=IN; } printf("%d %d %d\n",nc,nl,nw); } /*遇到单词外字符state调至OUT等到单词内第一个字符时计数并调至IN*/ }
练习:编写一个程序,以每行一个单词的形式打印输出
1 #include<stdio.h> 2 3 #define IN 1 4 #define OUT 2 5 6 main() 7 { 8 int c,state; 9 10 while((c=getchar())!=EOF) 11 { 12 if(c==‘\n‘||c==‘\t‘||c==‘ ‘) 13 { 14 state=OUT; 15 putchar(‘\n‘); 16 } 17 18 else 19 putchar(c); 20 } 21 }
标签:
原文地址:http://www.cnblogs.com/suzyc/p/4254810.html