首页 > 用户发贴区 > 编程问题提问区 > 统计输入字符数
2009
07-27

本人是个刚学c语言的。从《c程序设计语言》一书的第12页看到有个统计输入字符数的程序。有两个版本。


第一种:


#include “stdio.h”
void main()       

 long nc;
 nc=0;
 while(getchar()!=EOF)
 ++nc;                      
   printf(“%ld\n”,nc);
}


第二种:


#include “stdio.h”
void main()       

 double nc;
 for(nc=0;getchar()!=EOF;++nc)
 ;    /*书上说的空语句*/                 
   printf(“%.0f\n”,nc);
}


两种都是原书上抄下来的,但都不行。后将第二种中的空语句删除了后却成功的实现了统计输入字符数。而书上的讲“C语言的语法要求for循环语句必须有一个体,因此用单独的分号代替”。


请问:


1.为什么书上的两个程序不行?是否有错误,错在哪里?


2.空语句到底有什么用?为什么用了空语句反而不能成功?


菜鸟在这里先谢谢了。


 


留下一个回复