1.5.3行计数

1-9的练习我看了习题解答之后,确实震惊了一下。书上的逻辑严谨而且很巧妙。
他的思路是
本次输入与上一次输入进行判断。如果本次输入是空格判断上一个输入是不是空格。
if(c != ‘ ’)如果输入字符的不是空格。
putchar(c);就输出这个字符。
if(c == ‘ ’)如果输入的字符是空格的情况下。
if(lastc != ‘ ’)如果上一个输入的字符不是空格。
putchar(c);就输出这个字符。反之如果上一个输入的是空格则不进行动作。
if—else是二者选一只进行一次动作,有时候if并列会造成上一个if动作后达成下一个if语句的判断条件从而进行动作。
习题解答的最后一个例子在我看来真是达到了艺术的水准。
if(c !=‘ ’ || lastc !=‘ ’)
putchar(c);
lastc = c;
逻辑或||上一条语句为假则执行下一条语句如果前一条语句为真则不执行下一条语句。简单来说就是选其一。
如果输入不是空格则满足第一条直接执行输出。
如果输入是空格,第一条判断为假则执行第二条。
如果上一个字符不是空格则输出。
如果上一个字符是空格则不动作。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • .bat脚本基本命令语法 目录 批处理的常见命令(未列举的命令还比较多,请查阅帮助信息) 1、REM 和 :: 2...
    庆庆庆庆庆阅读 8,238评论 1 19
  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,216评论 0 13
  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 13,949评论 0 38
  • 一、Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计...
    子非鱼_t_阅读 4,310评论 1 44
  • 1、ajax是什么 AJAX 不是新的编程语言,而是一种使用现有标准的新方法。AJAX 是与服务器交换数据并更新部...
    Java小工匠阅读 470评论 0 3