刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

单选题

阅读下面代码,正确的输出是(  )

s ='Hello NOC'

ans ="

for c in s:

    if ord(c)>=ord('A')and ord(c)<= ord(Z'):

        ans+=chr(ord(c)+ 3-ord('A')+ ord('a'))

    elif ord(c)>=ord('a')and ord(c)<= ord(z'):

        ans +=chr(ord(c) + 3)

print(ans)

A

khoorQRF

B

khoor QRF

C

khoorgrf

D

khoor grf

使用微信搜索喵呜刷题,轻松应对考试!

答案:

A

解析:

【喵呜刷题小喵解析】:在给出的代码中,字符串`s`被赋值为`'Hello NOC'`。接着,通过一个`for`循环遍历`s`中的每个字符`c`。在循环中,首先检查字符`c`是否为大写字母。如果是,则将其转换为小写字母,并加上3,然后将其转换回字符并添加到`ans`字符串中。如果字符`c`为小写字母,则直接将其加上3,然后将其转换回字符并添加到`ans`字符串中。

代码中的`ord(c)`函数返回字符`c`的ASCII码值,`chr(ord(c) + 3)`函数将ASCII码值加上3后转回字符。但是,`ord(Z')`和`ord(z')`是无效的,应该是`ord('Z')`和`ord('z')`。

正确的代码应该是:


```python
s = 'Hello NOC'
ans = ''
for c in s:
if ord(c) >= ord('A') and ord(c) <= ord('Z'):
ans += chr(ord(c) + 3 - ord('A') + ord('a'))
elif ord(c) >= ord('a') and ord(c) <= ord('z'):
ans += chr(ord(c) + 3)
print(ans)
```
经过这样的修正,代码将输出`'khoorQRF'`。因此,正确答案是A。
创作类型:
原创

本文链接:阅读下面代码,正确的输出是(  ) s ='Hello NOC' ans =" for c in s

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share