本题导读

本题考查程序框图的顺序结构与循环结构,以及条件判别框的应用。

📌【题干】

Question

(2018年天津卷理)阅读如图所示的程序框图,运行相应的程序,若输入 的值为 20,则输出 的值为()

A. 1       B. 2       C. 3       D. 4

🔍【思路分析】

破题导航

  1. 理解框图逻辑:
  • 输入 ,初始化 ,。
  • 核心判断: 是否为整数。如果是,则累加计数值 。
  • 步进:无论判断结果如何,变量 都会自增 1。
  • 终止条件:当 时跳出循环。
  1. 模拟运行:手动列出每一步循环中 、 和 的状态,直到满足终止条件。

✅【答案】

点击查看答案

B

✍【详细解析】

Abstract

【答案】 B

【解析过程】

根据程序框图逐步运行:

  • 初始状态:。
  • 第一轮循环:
  • 判断 ,结果为整数。
  • 执行 。
  • 执行 。
  • 判断条件 (即 )不成立,继续循环。
  • 第二轮循环:
  • 判断 ,结果不为整数。
  • 直接执行 。
  • 判断条件 (即 )不成立,继续循环。
  • 第三轮循环:
  • 判断 ,结果为整数。
  • 执行 。
  • 执行 。
  • 判断条件 (即 )成立,跳出循环。
  • 输出结果:输出 。

故本题正确选项为 B。

💡【考点归纳与避坑指南】

Danger

  1. 准确记录变量状态:在处理程序框图题时,建议在草稿纸上列出一个简单的表格(),可以有效避免思维混乱。
  2. 注意判断时机:本题中 的判断是在 自增之后进行的。如果终止条件改为 或在自增前判断,结果将完全不同。
  3. 几何意义:从数学角度看,该程序实际上是在计算 在区间 内的整数因子的个数。

📖【试题探源与推广】

Tip

在 Obsidian 笔记中,可以积累这类题目的常见陷阱:

  • 计数起点: 是从 0、1 还是 2 开始?
  • 步长变化: 是每次加 1,还是翻倍()?
  • 求和 vs 计数:是执行 (求和)还是 (计数)?
  • 临界状态:当 恰好等于边界值时,是否还会执行最后一次循环体?

🔗【关联脉络】

Multi column