新人,有个疑问,求指教
刚学C语言没多久,现在在看C程序设计语言,里头有一道练习题:设计一个统计空格,制表符,换行符个数的程序。我打的代码是:#include <stdio.h>
main()
{
int c;
int asum, bsum, dsum;
asum=bsum=csum=0;
while ((c=getchar())!=EOF)
if(c==' ')
++asum;
if(c=='\t')
++bsum;
if(c=='\n')
++csum;
printf("共有空格%d制表符%d换行符%d\n",asum,bsum,csum);
}
但是这个程序不管打几个换行符,显示的都是0个,后来我在网上看到一个:
#include <stdio.h>
main()
{
int c;
int asum, bsum, dsum;
asum=bsum=csum=0;
while ((c=getchar())!=EOF){
if(c==' ')
++asum;
if(c=='\t')
++bsum;
if(c=='\n')
++csum;
}
printf("共有空格%d制表符%d换行符%d\n",asum,bsum,csum);
}
这个可以显示换行符,为什么要多一个花括号才可以呢?