深耕专业教研,探索前沿技术
信息技术来源:温州市普通高中2026届高三第二次适应性考试

第 7 题

答案与解析

本题解析

参考答案

A

程序分析

输入s → c ← 0,i ← 0,f ← False → i < len(s)?
i < len(s)? —Y→ '0' <= s[i] <= '9'?
'0' <= s[i] <= '9'? —Y→ f == False?
f == False? —Y→ c ← c + 1,f ← True → i ← i + 1
f == False? —N→ i ← i + 1
'0' <= s[i] <= '9'? —N→ f ← False → i ← i + 1
i ← i + 1 → i < len(s)?
i < len(s)? —N→ 输出c

i从0开始,每轮增加1,配合i < len(s)依次访问字符串中的每个字符;c初值为0,f初值为False。
遇到数字字符时,只有f为False才将c加1,并将f置为True;后续连续的数字因f为True而不再计数。遇到非数字字符时,将f重置为False,使下一段数字的首个字符可以再次触发计数。因此,f标记当前是否处于连续数字段中,c统计字符串中连续数字段的个数。

字符串"a12345bcd6e78f"中的连续数字段依次是"12345"、"6"和"78"。在字符'1'、'6'、'7'处,f均由False变为True,c依次变为1、2、3;每段内的其余数字不重复计数。遍历结束后输出c的值为3。