Chinaunix首页 | 论坛 | 博客
  • 博客访问: 542704
  • 博文数量: 59
  • 博客积分: 4096
  • 博客等级: 上校
  • 技术积分: 1445
  • 用 户 组: 普通用户
  • 注册时间: 2007-08-10 11:33
文章分类

全部博文(59)

文章存档

2011年(3)

2009年(2)

2008年(54)

我的朋友

分类:

2008-04-12 00:36:06

争取每天都看看《C程序设计语言》折本书,真是经典。把上面的例题习题代码都自己实现一遍。提高自己的编程技巧和能力。
 1,C语言编程时应该养成良好的书写习惯,在while后应该加{},否则忘记添加会酿成不易察觉的错误。
                                                                            

1 /*统计行数,单词数,字符数*/
  2 #include<stdio.h>
  3 #define IN 1 //在单词内

  4 #define OUT 0 //在单词外

  5 int main()
  6 {
  7 int c,line_num,word_num,char_num;
  8 line_num=word_num=char_num=0;
  9 int state=IN;//表示是否在单词内

 10 while((c=getchar())!=EOF)
 11 {
 12 ++char_num;
 13 if (c=='\n')
 14 ++line_num;
 15 if(c==' '||c=='\t'||c=='\n')// ||优先级低于==

 16 {
 17 state=OUT;
 18 // ++word_num; 如果在这里统计单词数目,则不对统计的是所有空格,制表,和回车的总和

 19 }
 20 else if(state==OUT)
 21 {
 22 state=IN;
 23 ++word_num;
 24 }
 25 }
 26 printf("The line number is %d",line_num);
 27 printf("\nThe word number is %d",word_num);
 28 printf("\nThe char number is %d",char_num);
 29 return 0;
 30 }

在第10行的while((c=getchar())!=EOF)中,有两次编程都忘记在c=getchar()两边加括号,导致错误。应该注意。。
2,
阅读(683) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~