跳转到内容

编程基础/实践:多路选择

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

支持“编程基础 - 使用 C++ 的模块化结构化方法”集合/教科书中本章的问题、练习、问题等。

学习目标

[编辑 | 编辑源代码]

在记忆构建活动、练习、实验作业、问题或计时测验/考试中,学生应以 100% 的准确率

  1. 定义与本章相关模块中列出的定义中的术语。
  2. 识别哪些选择控制结构是双向选择,哪些是多路选择。
  3. 理解、定义和/或解释 case、switch 和嵌套 if then else。
  4. 能够为 case 控制结构编写伪代码或流程图。
  5. 能够使用相等性和列出的值 (带有 break 的 switch 充当 case 结构) 为 case 结构编写 C++ 源代码。
  6. 能够使用值范围或浮点值 (嵌套的 if then else 充当 case 结构) 为 case 结构编写 C++ 源代码。
  7. 在可行的情况下,能够将充当 case 的 switch 的 C++ 源代码转换为嵌套的 if then else,反之亦然。

评估以下逻辑布尔表达式

[编辑 | 编辑源代码]
  1. 25 > 39 || 15 > 36
  2. 19 > 26 || 13 < 17
  3. 14 < 7 && 6 <= 6
  4. 4 > 3 && 17 >= 7
  5. ! true
  6. ! (13 == 7)
  7. 9 != 7 && ! 1
  8. 6 < && 8
答案
  1. 0
  2. 1
  3. 0
  4. 1
  5. 0
  6. 1
  7. 0
  8. 错误,运算符 < 和 && 之间需要一个操作数。

链接到:数据操作第 3 部分

实验作业

[编辑 | 编辑源代码]

为第 12 章文件创建文件夹或子文件夹

[编辑 | 编辑源代码]

根据您的编译器/IDE,您应该决定在哪里下载和存储源代码文件以进行处理。谨慎起见,您应该在下载源代码文件之前根据需要创建这些文件夹。Bloodshed Dev-C++ 5 编译器/IDE 的建议子文件夹可能命名为

  • 名为 Cpp_Source_Code_Files 的文件夹中的 Chapter_12

如果您尚未这样做,请创建适当的文件夹和/或子文件夹。

下载实验文件

[编辑 | 编辑源代码]

将以下文件下载并存储到您的存储设备中的适当文件夹中。您可能需要右键单击链接并选择“目标另存为”才能下载文件。

从 Connexions 下载:Lab_12a.cpp

详细实验说明

[编辑 | 编辑源代码]

仔细阅读并遵循以下说明,并按列出的顺序执行步骤。

  • 编译并运行 Lab_12a.cpp 源代码文件。了解它是如何工作的。
  • 复制源代码文件 Lab_12a.cpp,并将其命名为:Lab_12b.cpp
  • 将嵌套的 if then else 转换为带 break 的 switch。
  • 构建(编译并运行)您的程序。
  • 成功编写该程序后,如果您是为大学学分学习本课程,请遵循教授/讲师的说明将其提交以进行评分。

问题 12a - 说明

[编辑 | 编辑源代码]

为以下伪代码绘制流程图

示例 1:伪代码

[编辑 | 编辑源代码]
Case of shoe_size
    4 to 6    Display "Small."
    7 to 9    Display "Medium."
    10 +        Display "Large."
Endcase

问题 12b - 说明

[编辑 | 编辑源代码]

“人字拖” 是一家独特的鞋店,只出售人字拖。小于 4 的成人鞋码在童鞋区处理,因此我们不需要关注小于 4 的尺码。半码要向下取整,因此在此案例结构之前发生的提示将已经解决了这个问题。变量 shoe_size 将是一个介于 4 和 1,000,000,000(十亿)之间的整数。

编写以下伪代码的 C++ 源代码

示例 2:伪代码

[edit | edit source]
Case of shoe_size
    4 to 6    Display "Small."
    7 to 9    Display "Medium."
    10 +        Display "Large."
Endcase

问题 12c – 说明

[edit | edit source]

编写以下伪代码的 C++ 源代码

示例 3:伪代码

[edit | edit source]
If age equal to 24
    Display a message "You’re the same age as Melinda."
Else
    If age equal to 27
        Display a message "You’re the same age as Ruth."
    Else
        If age equal to 34
            Display a message "You’re the same age as Ben."
        Else
            Display a message "You’re age is un-important."
        Endif
    Endif
Endif
华夏公益教科书