Help~C语言程序问题

来源:百度知道 编辑:UC知道 时间:2024/06/10 22:17:35
现在在程序中如果输入()等字符程序就会认为是一个单词,很多朋友给了我他们的源程序,但我试过都不能排除这一问题,请大家再帮我看下谢谢^^!#include "stdio.h"
main()
{char ch;
long a=0,b=1,c=0,d=0,f=0;
printf("请输入文章:");
while ((ch=getchar())!=EOF)
{
c++;
if(ch=='\n')
{a++;}
else if((ch=='\t'||ch=='\n'||ch==' ')&&
!((ch>='0'&&ch<='9')||((ch>='a'&&ch<='z')||(ch>'A'&&ch<='Z'))))
{b++;}
}
printf("此文章有%d行\n",a);
printf("此文章有%d个单词\n",b);
printf("字符有%d个\n",c);

}
请尽量在我写的上修改目前我们只学了stdio.h函数头

if((ch=='\t'||ch=='\n'||ch==' ')&&
!((ch>='0'&&ch<='9')||((ch>='a'&&ch<='z')||(ch>'A'&&ch<='Z'))))
{b++;}
这里有错啊,不能这样写的
建议你改一下if语句

假若你还只学到stdio.h种个的话。
那么EOF()就应该还不会
EOF()函数的参数是一个已经打开的文件的句柄(也就是标识符)。在打开文件进行操作的过程中,文件指针有可能被移动,当指针被移动到文件末尾时EOF() 函数返回True。
这个要调用文件。