楼主试试在printf之前输出num,很大概率是等于0的。

最严重的问题:

、*(如果以下看不懂请移动至最下面,对gets()函数的分析)*、

1、gets(s)每次返回一行而不是一次性返回EOF之前的全部字符!楼主可能是这一点想错了,如果不是请看下面的分析。

2、为什么num=0? gets(s)每次读一行,s是字符串,楼主每次只判断了一个字符*p,就继续下一次循环了,输入的样例很可能会导致num=0的就是num++那句不会执行。应该再加一重循环while(*p!='\0')判断s里的每个字符。

3、每次判断一行数字,p就应该从s的开头开始,所以 char *p=s应该放在while(get(s))这个循环里面。

其他的方法我推荐用while((ch=getchar())!=EOF),这个你的思路挺符合的,一个字符一个字符判断,你可以去搜这句,挺经典的。

int getchar ( void)

返回值为用户输入的ASCII码,读到文件末尾返回EOF,EOF的值是-1

从方法上说,可以用空格或换行判断单词数,'\n'判断行数。按照题目来说应该是没有句号或逗号的。

比如

char ch;

while((ch=getchar())!=EOF){

if(ch=='\n') {

lineNum++;

wordNum++;

}

else if(ch==' ') {

wordNum++;

}

printf("%d %d",lineNum,wordNum);

while(1); // 按Ctrz+z后卡死在这里可以看输出的结果

我测试了下,目测正确。

抱歉,之前没仔细看代码,就看了一行while(gets(s)!=EOF) 。就直接写答案了,刚刚想起其实好像也没什么问题,所以去看了你的代码。

之前的回答:

楼主用的是C编译器的吧,我用C++编译器编译不过的。ERROR:ISO C++ forbids comparison between pointer and integer 。

gets() 错了,gets()返回的是指针,EOF是int整数,应该用while(gets(s)!=NULL) 。

如下:

函数原型是char * gets (char * buffer ); 读取成功返回和buffer相同的指针,遇到错误或EOF返回NULL。

执行时,不断从stdin读取字符,遇到换行符或EOF时停止,并将读取的结果存放在buffer中。注意换行符会被转换为‘\0’(空字符),加在buffer的后面。

python输入一个英文句子、统计并输出单词数_C语言实现输入多行英文句子然后统计单词数和行数,如何输入?我的代码问题在哪里?...相关推荐

  1. python输入一个正整数n求下列算式的值_C语言编写程序:输入一个正整数x和一个正整数n,求下列算式的值。,C语言 编写一个程序,输入一个正整数,求出它是几位数。...

    导航:网站首页 > C语言编写程序:输入一个正整数x和一个正整数n,求下列算式的值.,C语言 编写一个程序,输入一个正整数,求出它是几位数. C语言编写程序:输入一个正整数x和一个正整数n,求下 ...

  2. python输入一个三位数输出百位十位个位_python输入一个水仙花数(三位数) 输出百位十位个位实例...

    我就废话不多说了,大家还是直接看代码吧! # python输入一个水仙花数(三位数) 输出百位十位个位 """ 从控制台输入一个三位数num, 如果是水仙花数就打印num ...

  3. python输入一个三位数输出它的百位十位个位_python输入一个水仙花数(三位数) 输出百位十位个位实例...

    我就废话不多说了,大家还是直接看代码吧! # python输入一个水仙花数(三位数) 输出百位十位个位 """ 从控制台输入一个三位数num, 如果是水仙花数就打印num ...

  4. R7-1 jmu-python-找字符分数 15作者 linli单位 集美大学输入一个字符串及字符,输出第一次出现该字符的位置。输入格式:行1:输入字符串行2:输入一个字符输出格式:

    R7-1 jmu-python-找字符 输入一个字符串及字符,输出第一次出现该字符的位置. 输入格式: 行1:输入字符串 行2:输入一个字符 输出格式: 找到,输出对应位置,格式index=X的, X ...

  5. ACMNO.25 C语言-间隔输出 写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。如输入1990,应输出1 9 9 0。 输入 一个四位数 输出 增加空格输出

    题目描述 写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格.如输入1990,应输出"1 9 9 0". 输入 一个四位数 输出 增加空格输出 样例输入 199 ...

  6. 写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。如输入1990,应输出1 9 9 0。

    题目描述 写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格.如输入1990,应输出"1 9 9 0". 输入 一个四位数 输出 增加空格输出 样例输入 199 ...

  7. java将一个整数反转输出,输入一个整数,实现反转输出,如输入123,输出321。...

    输入一个整数,实现反转输出. Example 1: Input: 123 Output: 321 Example 2: Input: -123 Output: -321 Example 3: Inpu ...

  8. java10个整数反向输出_输入一个整数,实现反转输出,如输入123,输出321。

    输入一个整数,实现反转输出. Example 1: Input: 123 Output: 321 Example 2: Input: -123 Output: -321 Example 3: Inpu ...

  9. 输入一个非负整数,正序输出它的每一位数字

    题目:输入一个非负整数,正序输出它的每一位数字 #include <stdio.h>int main(int argc, char **argv) {// 13425 / 10000 -& ...

最新文章

  1. FATE 集群部署 step1
  2. #与##在宏定义中的--宏展开
  3. Windows下关于Git的行结束符
  4. 为什么onenote一直在加载_OneNote:科研笔记独一无二的无敌利器
  5. 用VBA得到EXCEL表格中的行数和列数
  6. 2017西安交大ACM小学期 敏感词汇[AC自动机]
  7. Python花式编程案例锦集(3)
  8. xm list源码分析
  9. glassfish 是oracle的,GlassFish“百天”小版本 彰显Oracle的大功力
  10. 搜索场 day1 A 求和
  11. 筑牢高校实验室安全管理防线,科学管理提高师生安全意识
  12. 个推华为推送、小米推送、苹果推送及角标
  13. 最基础的傅里叶变换公式推导
  14. Dragonfly 应用-如何计算面孔隙率
  15. tesseract 学习笔记 psm+限定识别内容提升识别精度
  16. ggggggggggg
  17. 星巴克季节限定星怡杯樱花味拿铁升级回归
  18. 风影ASP.NET基础教学 10 DetilsView
  19. 深度学习学习笔记(二)
  20. 存储过程中的when others then 和 raise 何意义?

热门文章

  1. 达梦数据库管理工具使用
  2. Caffe base_lr递减
  3. 多路视频数据实时采集系统设计与实现
  4. SAP 采购申请、采购订单的审批策略
  5. 离线在Jenkins安装CoBOT安装插件
  6. Cloudera Manager —— 端到端的企业数据中心管理工具
  7. hdu2822(会双搜后再写次)
  8. 深入浅出傅里叶变换(目前看到的讲得最好的一篇文章)
  9. Discuz!x1.5实现在线文档(doc、ppt、pdf)播放
  10. 维瓦尔第协奏曲《四季》赏析 (Antonio Vavildi 《The Four Seasons》)