跳至内容

编程基础/实践:条件

来自维基教科书,开放世界中的开放书籍

章节摘要

[编辑 | 编辑源代码]
  • 结构化编程 - 结构化编程是一种编程范式,旨在通过广泛使用选择、重复、块结构和子程序等结构化控制流程结构来提高计算机程序的清晰度、质量和开发时间。
  • 选择控制结构 - 条件语句根据程序员指定的布尔条件是否计算为真或假,执行不同的计算或操作。
  • If Then Else - 在许多编程语言中常见的双向选择结构。
  • 代码块 - 源代码的词法结构,这些源代码被分组在一起。
  • 关系运算符 - 测试或定义两个实体之间某种关系。
  • 赋值与相等 - 赋值将值设置为变量的内存地址位置。左操作数设置为右操作数的值,并用单个等号 (=) 表示。相等是一个关系运算符,用于比较或测试两个操作数,通常用两个或三个等号 (==, ===) 表示。这种比较的结果返回真或假。[1] [2]
  • 逻辑运算符 - 用于连接两个或多个表达式的符号或单词,使得产生的复合表达式的值仅取决于原始表达式的值和运算符的含义。
  • 嵌套 If Then Else - 双向选择结构可以嵌套在其他双向选择结构中,形成多路选择。
  • 情况控制结构 - case 或 switch 语句是一种选择控制机制类型,用于允许变量或表达式的值通过多路分支更改程序执行的控制流。

复习问题

[编辑 | 编辑源代码]

真 / 假

[编辑 | 编辑源代码]
  1. 控制结构只有两类。
  2. 分支控制结构在良好的结构化编程中很少使用。
  3. If then else 是一种多路选择控制结构。
  4. While 控制结构是分支类别的一部分。
  5. 伪代码比流程图更好。
  6. 在顺序控制结构中,程序执行路径由问题提示的选择决定。
  7. 迭代控制结构允许一些代码行多次执行。
  8. 关系运算符是用于创建复杂布尔表达式的运算符。
  9. 构建 if-then-else 语句的最佳方式是检查语句是否为真。
  10. 语句“True and False”的值为“True”。
  11. 要初始化或设置变量的值,应使用等号运算符 (==)

答案

  1. false - 有三类。
  2. true
  3. false - 它是选择结构的一部分。
  4. false - 它是重复类别的一部分。
  5. false - 虽然伪代码可能非常有用,但它不像流程图那样清晰。
  6. false - 顺序结构程序按列表中的顺序执行项目。
  7. true
  8. false - 它们用于测试值之间的关系。
  9. false - 通常,测试 False 或非 False 比测试 True 或非 True 更好。
  10. false - 语句的值为“False”。
  11. false - 使用赋值运算符 (=)

评估以下布尔表达式

  1. 25 < 7
  2. 3 < 7
  3. 14 > 7
  4. 17 <= 7
  5. 25 >= 7
  6. 13 == 7
  7. 9 != 7
  8. 5 !> 7
  9. 25 > 39 || 15 > 36
  10. 19 > 26 || 13 < 17
  11. 14 < 7 && 6 <= 6
  12. 4 > 3 && 17 >= 7
  13. ! true
  14. ! (13 == 7)
  15. 9 != 7 && ! 1
  16. 6 < && 8

答案

  1. 0
  2. 1
  3. 1
  4. 0
  5. 1
  6. 0
  7. 1
  8. 错误,“不大于”不是有效的运算符。
  9. 0
  10. 1
  11. 0
  12. 1
  13. 0
  14. 1
  15. 0
  16. 错误,运算符 < 和 && 之间需要有操作数。

简答题

[编辑 | 编辑源代码]
  1. 列出控制结构的四类,并简要描述每类。
  2. 创建一个包含六个关系运算符及其含义的表格。
  3. 提供在何时使用“if”、"if-else" 和 "if-else if-else" 的示例。
  4. 描述赋值和相等之间的区别,并提供每个被正确使用的示例。

使用伪代码、流程图工具或您选择的编程语言完成以下活动。对输入、每种类型处理和输出使用单独的函数。通过传递参数和返回结果来避免全局变量。创建测试数据以验证每个程序的准确性。在程序顶部添加注释,并包括对所使用资源的引用。

  1. 创建一个程序,提示用户输入小时数和每小时工资,然后计算总工资(小时数 * 工资)。包括计算,为任何加班(超过 40 小时的工作时间)提供 1.5 倍的时薪。[3] 例如,以每小时 10 美元工作 50 小时,包括加班费为 550 美元。
  2. 创建一个程序,询问用户他们多少岁。然后询问用户他们是否想了解他们以(M)月、(D)天、(H)小时或(S)秒为单位的年龄。使用 if/else 条件语句来计算并显示他们在选定时间段内的近似年龄。不要执行任何不必要的计算。
  3. 查看MathsIsFun:美国标准长度。创建一个程序,询问用户以英里为单位的距离,然后询问用户他们是否希望以美国测量单位(码、英尺和英寸)或公制测量单位(公里、米和厘米)表示距离。使用 if/else 条件语句来确定他们的选择,然后计算并显示结果。
  4. 查看MathsIsFun:平面形状的面积。创建一个程序,询问用户他们想计算什么形状的面积。使用 if/else 条件语句来确定他们的选择,然后收集适当的输入,并计算并显示形状的面积。
  5. 查看维基百科:狗狗的衰老。创建一个程序,提示用户输入他们狗狗的名字及其以人类年龄为单位的年龄。计算并显示他们狗狗以狗年为单位的年龄,假设前两年分别等于 10.5 年,之后的每一年等于 4 个人类年。确保在输出中包含狗狗的名字,例如
        Spike 以狗年计算是 14.0 岁。
  6. 创建一个程序,帮助用户根据他们的鞋码确定订购什么尺寸的袜子
        < 4 = 特小号
        4 到 6 = 小号
        7 到 9 = 中号
        10 到 12 = 大号
        13+ = 特大号
    使用 if/else 条件语句来确定他们的选择,然后显示结果。将半码向上舍入到下一个整数。一种舍入方法是添加 0.5,然后转换为整数。
  7. 如果您的编程语言支持,请更新上述一个或多个程序,用 case/select 条件语句替换 if/else 条件语句。
  8. 查看维基百科:Is 函数。如果您的编程语言支持,请更新上述一个或多个程序,包括对所有数字输入的输入验证。
  9. 如果您的编程语言支持,请通过添加结构化异常处理语句(try-catch、try-except 等)来扩展上述一个或多个程序,以处理用户输入无效值导致的任何运行时错误。

参考资料

[编辑 | 编辑源代码]
华夏公益教科书