11.学生考勤系统算法描述如下:“查看每个学生的考勤记录,迟到的学生记录加1,最后得到迟到统计人数”。这种描述方式是
A.自然语言
B.高级语言
C.伪代码
D.流程图
定义:人们日常使用的语言(如中文、英文等),无需特殊语法或格式,通俗易懂。
特点:用直白的文字描述算法逻辑,不涉及编程语言的语法,也不使用严格的符号或流程结构。
示例:“遍历所有学生记录,若状态为‘迟到’,则计数器加 1,最后输出计数器值。”
2. 高级语言(B 选项)
定义:如 Python、Java 等编程语言,有严格的语法规则和关键字,可直接编译或解释执行。
特点:需遵循特定语法(如循环结构、条件判断等),例如用 Python 写考勤统计:
python
运行
count = 0for student in students:
if student.attendance == "迟到":
count += 1print("迟到人数:", count)
与题干的区别:题干未使用任何编程语言的语法,不属于高级语言。
3. 伪代码(C 选项)
定义:介于自然语言和编程语言之间的符号化描述,使用近似编程语言的逻辑结构(如循环、条件判断),但不严格遵循某一语言的语法。
特点:通常包含 “遍历”“如果… 则…” 等逻辑关键词,并用缩进或特定符号表示流程,例如:
plaintext
初始化 迟到人数 = 0
遍历 每个学生 in 学生列表:
如果 学生状态 == "迟到":
迟到人数 = 迟到人数 + 1
输出 迟到人数
与题干的区别:题干仅用自然语言描述流程,未体现伪代码的逻辑结构(如循环、条件判断的符号化表达),因此不属于伪代码。
4. 流程图(D 选项)
定义:用图形符号(如矩形、菱形、箭头等)表示算法流程,直观展示逻辑顺序。
特点:需通过图形元素(如 “开始”“结束” 框、处理框、判断框)和箭头连线呈现,例如:
plaintext
┌───────┐
│ 开始 │
└──┬────┘
▼
┌───────┐
│ 初始化count=0 │
└──┬────┘
▼
┌───────┐
│ 遍历学生记录 │
└──┬────┘
▼
┌───────┐
│ 判断是否迟到 │
└──┬────┘
▼
┌───┬───┐ ┌────────┐
│ 是 │ 否 │ │ 继续下一个学生 │
└───┴───┘ └────────┘
▼ │
┌───────┐ ▼
│ count+1 │ ┌────────┐
└──┬────┘ │ 结束 │
▼ └────────┘
┌───────┐
│ 输出count │
└───────┘
与题干的区别:题干完全是文字描述,没有图形符号,不属于流程图。
二、题干描述的类型分析
题干 “查看每个学生的考勤记录,迟到的学生记录加 1,最后得到迟到统计人数” 的特点:
用中文自然语言描述算法步骤,无任何编程语言语法、伪代码的逻辑符号(如 “遍历”“如果”),也没有流程图的图形元素。
仅通过直白的文字顺序说明 “查看→计数→统计” 的过程,符合自然语言的定义。
三、结论
该描述方式属于 自然语言,正确答案为 A 选项。