4条回答 默认 最新
- 懒得动 2016-12-26 11:51关注
这里很好理解啊,我们来举个例子,假如我输入
i love you
i love you
当我输入i的时候,首先++nc,这没有疑问,然后通过判断语句i不是换行\n,不是空格,也不是制表符\t。并且state初始化的是OUT,所以执行
else if 下面的语句
,即改变state的状态,并且增加一个单词 ++nw,你可能会疑问,我才输入一个字符怎么就增加一个单词,那是因为,不管第一个单词是几个字符,
只要下一次输入的是空格或者制表符或者\n,就是一个单词。好!不说废话,输入i后紧接着我们输入一个空格,程序会怎么样呢?废话,当然是++mc,state = out,然后等下一个输入,下一个输入l,++nc,然后呢state=in ,++nw,然后输入o,++nc,然后输入v,++nc,然后输入e,++nc,再然后又是一个空格,++nc,state=out。然后输入的是y,++nc,state=in,++nw
以此类推 总之一句话每个单词输入第一个字符的时候++nw,而不是单词输完后++nw 就是这么简单,转换一下思维就很容易理解了解决 2无用
悬赏问题
- ¥15 FPGA-SRIO初始化失败
- ¥15 MapReduce实现倒排索引失败
- ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
- ¥15 找一位技术过硬的游戏pj程序员
- ¥15 matlab生成电测深三层曲线模型代码
- ¥50 随机森林与房贷信用风险模型
- ¥50 buildozer打包kivy app失败
- ¥30 在vs2022里运行python代码
- ¥15 不同尺寸货物如何寻找合适的包装箱型谱
- ¥15 求解 yolo算法问题