深耕专业教研,探索前沿技术
信息技术来源:2026年4月嘉兴市高三教学测试

第 10 题

答案与解析

本题解析

参考答案

B

程序分析

ans = 0; num = 0
for i in range(len(s)):
    if s[i] in "0123456789":
        num += 1
        if num > ans:
            ans = num
    else:
        num = 0

程序从左到右逐个检查字符。遇到数字字符时,num加1;遇到非数字字符时,num清零,重新开始计数。因此,num记录当前连续数字段的长度。
每次数到数字后,只有num大于ans才更新ans,遇到非数字时也不会清空ans,所以ans保存扫描过程中出现过的最长连续数字段的长度。

字符串a07ab2626c071中的连续数字段依次为“07”“2626”“071”,长度分别为2、4、3。扫描“2626”后ans更新为4,后面的“071”长度只有3,不会再更新ans,最终ans为4。