信息技术来源:镇海中学2026年5月高三高考模拟考试
第 10 题
答案与解析
本题解析
参考答案
B
程序分析
res = ""; i = 0
while i < len(s):
if s[i] in 'aeiou':
res += chr(ord(s[i]) - 32)
i += step + 1
step += 1
else:
res += s[i]
i += 1res 初值为空字符串,i 从 0 开始,循环在 i<len(s) 时处理 s[i]。若当前字符属于 a、e、i、o、u,ord(s[i])−32 得到对应大写字母的编码,chr 将其转换为字符并追加到 res;随后 i 按当前 step+1 向后移动,再将 step 增加 1。若当前字符不是元音,则原样追加到 res,i 只增加 1,step 不变。因此,程序只收集实际访问到的字符,并将其中的元音大写;遇到元音时的跳转距离依次为 2、3、4……。
字符串 beautiful 的下标依次为 0 至 8。初始 step=1,实际访问过程如下:
| 本轮 i | s[i] | 追加后的 res | 更新后的 i | 更新后的 step |
|---|---|---|---|---|
| 0 | b | b | 1 | 1 |
| 1 | e | bE | 3 | 2 |
| 3 | u | bEU | 6 | 3 |
| 6 | f | bEUf | 7 | 3 |
| 7 | u | bEUfU | 11 | 4 |
最后 i=11,不满足 i<9,循环结束,res 为 "bEUfU"。
问题反馈
解析有疑问或显示异常?请先复制题目信息,再打开反馈表单填写。
题目编号:2026_05_G3_zhenzhongmoni_q010
