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

单选题

运行下面程序,错误的输入和输出数据是?( ) try: ​ x=eval(input()) ​ c=abs(x) ​ print(c) except NameError: ​ print('NameError!') except: ​ print('Other error!')

A
输入0输出Other error!
B
输入-2.5输出2.5
C
输入6输出6
D
输入abc输出NameError!
使用微信搜索喵呜刷题,轻松应对考试!

答案:

A

解析:

【喵呜刷题小喵解析】:在给出的程序中,首先使用`eval(input())`来接收用户输入,并将其转换为Python表达式。然后,程序尝试计算该表达式的绝对值,并输出结果。

对于选项A,输入为0,`eval(input())`会尝试将输入的字符串"0"转换为Python表达式,这不会引发`NameError`,因此程序会执行`c=abs(x)`,其中`x`的值为0,所以`c`的值为0,输出的结果也应该是0,而不是"Other error!"。因此,选项A是错误的输入和输出数据。

对于选项B,输入为-2.5,`eval(input())`会尝试将输入的字符串"-2.5"转换为Python表达式,这不会引发`NameError`,因此程序会执行`c=abs(x)`,其中`x`的值为-2.5,所以`c`的值为2.5,输出的结果也应该是2.5,与选项B的描述一致。

对于选项C,输入为6,`eval(input())`会尝试将输入的字符串"6"转换为Python表达式,这不会引发`NameError`,因此程序会执行`c=abs(x)`,其中`x`的值为6,所以`c`的值为6,输出的结果也应该是6,与选项C的描述一致。

对于选项D,输入为abc,`eval(input())`会尝试将输入的字符串"abc"转换为Python表达式,这会引发`NameError`,因此程序会执行`except NameError:`分支,输出的结果应该是"NameError!",与选项D的描述一致。
创作类型:
原创

本文链接:运行下面程序,错误的输入和输出数据是?( ) try: ​ x=eval(input())

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

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

分享考题
share