满意答案

houjiaqi111

2014.09.08

采纳率:54%    等级:11

已帮助:9752人

别人写的,你看看,应该很好懂

#include "stdio.h"

main()

{

char s[81],c;

int i,num=0,word=0;

printf("请输入一行英文:\n");

gets(s);

for(i=0;(c=s[i])!='\0';i++)//判断句子是否到未

if(c==' ') word=0;//是空格就为0

else if(word==0)//不是空格就判断之前有没有空格

{

word=1;//复位用来判断空格是否存在的开关

num++;//如果之前有空格,单词数加1

}

printf("本行中共有%d个单词.\n",num);

}

其原理很简单:

对每个字符进行判断,如果是空格就把变量word标记为0,如果不是空格就判断word是不是0(即判断之前有没有空格),如果存在空格单词量加1,然后复位word变量为0。就这样重复,知道句子结束

追问

理解了一些了 !! 谢谢!谢谢,已经很易懂了,

但是还想请教一下 你说的复位那 不太理解 如果是单词了 num就+1了 为什么要让word=1呀

回答

其实word不一定非要等于1的,只要等于非0就可以了,如果不重置word,你下下一次输入字符时,num一样+1.。举个例子:

我输入的是:It is happy that help somebody !

首先经过程序的计算,这里会有7个单词,“!”也算进去了。

判断开始,此时word=0;发现第一个不是空格,word=1,num加1;第二个字符不是空格,但此时word=1(这里就是为什么要重置word的原因,不然I和t会被视为2个单词)而不是0所以,所以num不增加。然后又发现第三个字符时空格,此时把word置为0,然后发现第四个字符不是空格,此时word在前一次遇到空格时置为0,所以满足条件word=0且c为非空格,所以此时word又被赋值1,num又加1,此时num为2(检查到的单词为it和is)。。。然后继续这样循环。。直到句子结束。

00分享举报

c语言如何输入一篇英文文章,(急急,救命啊!c语言)输入一篇英语文章,求输出这篇文章的所有英语单词的个数。...相关推荐

  1. python输入数字输出月份英文_编写一个程序,输入月份号,输出该月的中文名和英文名。...

    题目: 编写一个程序,输入月份号,输出该月的中文名和英文名. 例如,输入"3",则输出三月份,输出March,要求用指针数组处理. #include #include using ...

  2. 【WinForm】TextBox只能输入中文,英文,数字,不允许输入特殊字符

    private void textBox1_KeyPress(object sender, KeyPressEventArgs e) {Regex rg = new Regex("^[\u4 ...

  3. vue限制只能输入数字_vue+element 中 el-input框 限制只能输入数字及一位小数

    仅个人经验,希望能帮到有需要的人. 第一次写 就话不多说了直接上代码. // 只能输入数字且只有一位小数 proving(e) { // this.form.skus[e].Price 是input的 ...

  4. c语言对一篇英文文章进行统计,C语言统计一篇英文短文中单词的个数实例代码...

    具体代码如下所述: #include #define N 1000 void main(){ char en[N][81]; int i,j,num=0,n,state; //num 用来统计单词的个 ...

  5. 统计一段英文中单词的个数c语言,C语言统计一篇英文短文中单词的个数实例代码...

    具体代码如下所述: #include #define N 1000 void main(){ char en[N][81]; int i,j,num=0,n,state; //num 用来统计单词的个 ...

  6. C++流操作练习:统计一篇英文(The_Holy_Bible.txt)文章中出现的单词和词频 并组成字典

    C++流操作练习:统计一篇英文(The_Holy_Bible.txt)文章中出现的单词和词频 并组成字典 一.题目 统计一篇英文(The_Holy_Bible.txt)文章中出现的单词和词频, 输入: ...

  7. 统计一篇英文文章中26 字母出现的概率

    统计一篇英文文章中26 字母出现的概率 //统计英文文章中26 字母出现的概率 #include <stdio.h> void main() { float number[26]={0}; ...

  8. Java—统计一篇英文文章中出现的不重复单词的个数

    题目: 输入一篇英文文章,碰到"!!!"的时候停止,输出文章中出现的不重复单词的个数(注意:单词不区分大小写,如:The和the为一个单词) 输入格式: 一篇英文文章,以" ...

  9. 统计一篇英文文章中单词出现的频数

    1.题目内容:如何统计一篇英文文章中单词出现的频数,依次从键盘中输入该文章. 2.思路:使用map一一映射 3.程序清单: #include<iostream> #include<s ...

最新文章

  1. 阿里云企业邮箱收费吗
  2. 数学图形(2.26) 3D曲线结
  3. 学习angularjs的内置API函数
  4. java怎么把system.out的东西输出到文件上
  5. sendBroadcast与sendStickyBroadcast的区别
  6. 【HTML】底部弹窗插件代码
  7. extjs html页面刷新,ExtJS onReady引发的浏览器对页面的加载过程
  8. gets函数用不了_函数篇:指数函数
  9. 生宣、熟宣、半生半熟宣纸各有什么特点?初学书法用哪种宣纸好?
  10. python入门--动态绑定属性和方法
  11. 【编程题目】寻找丑数
  12. Android TV CTS 测试认证汇总
  13. android 涨潮动画加载_潮汐app下载 潮汐 (睡眠白噪音番茄钟) for Android V3.9.1 安卓手机版 下载-脚本之家...
  14. 华为计算机平台芯片,华为连发两款AI芯片,计算力远超谷歌及英伟达
  15. AirDisk产品BT下载
  16. 搭建运营工单数据分析系统
  17. 5.5.1 jmeter组件-取样器-HTTP请求
  18. window的onload()的使用
  19. 好东西硬盘故障率还是西数黑盘,绿盘最低啊
  20. 关于串口波特率的的记录

热门文章

  1. USACO 2012 January Contest, Silver Division Solution
  2. 我的2005高考作文:出人意料和情理之中
  3. turtle库制作简单动画和总结
  4. java trigger_Quartz教程四:Trigger
  5. [lintcode]入门
  6. 计算机无法识别光猫信号,网络突然连不上?教你如何看光猫指示灯判断网络问题!...
  7. 微信小程序客服之如何接入多客服
  8. 程序员睡眠与养生诀窍
  9. Android Adapter适配器
  10. 网页版ASN1解码工具使用教程