python二级考试操作题8

python二级考试操作题8


2024年4月14日发(作者:)

1.101

从键盘输入一个人的身高和体重的数字,以英文逗号隔开,在屏幕上

显示输出这个人的身体质量指数(BMI),BMI 的计算公式是 BMI =

体重(kg)/ 身高2(m

2

)。

参照代码模板完善代码,实现下述功能,本题支持自动评阅。

输入输出示例

输入

示例

1

1.6,50

输出

BMI是19.5

习题讲解

h,w = eval(input()) # 请输入身高(m)和体重(kg),逗号隔开print("BMI是

{:.1f}".format(w /(h*h) ))

# 需要掌握浮点数的输出格式符和 eval 用法

2.102

参照代码模板完善代码,实现下述功能。

从键盘输入一个由 1 和 0 组成的二进制字符串 s,转换为十进制数

输出显示在屏幕上,示例如下:

-

输入

请输入一个由 1 和 0 组成的二进制数字串:1101

输出

转换成十进制数是:13

本题支持自动评阅。

输入输出示例

输入

示例

1

1101

输出

13

习题讲解

s = input() # 请输入一个由1和0组成的二进制数字串:

d = 0while s:

d = d*2 + (ord(s[0]) -ord('0'))

s = s[1:]print("转换成十进制数是:{}".format(d))

#需要掌握 print 和 format 的格式用法,字符串的内置处理函数

3.103

参照代码模板完善代码,实现下述功能,本题支持自动评阅:

欢迎下载

2

-

计算两个向量的内积。从键盘接收一个整数 n,作为一维向量的长度;

然后输入 n 个整数,以英文逗号隔开,存成一个向量 x,然后再接

收另 n 个整数,以逗号隔开,存成另一个向量 y,然后计算两个向

量对应元素的乘积的和。在屏幕上输出结果。

示例如下:

输入

3

1,2,3

4,5,6

输出

x和y的内积是:32

输入输出示例

欢迎下载

3

-

输入

示例

1

3

1,2,3

4,5,6

输出

x和y的内积是:32

习题讲解

答案:

n = eval(input()) # "请输入向量的长度n:"

xin = input().split(',') # "请输入向量x的{}个整数,以英文逗号分隔:".format(n)

yin = input().split(',') # "请输入向量y的{}个整数,以英文逗号分隔:

".format(n)sum = 0for i in range(n):

sum += int(xin[i]) * int(yin[i])print("x和y的内积是:", sum)

要点:

1. 要用输入进去的n来给用户提示,所以在input里用到了format()

2. 输入的数据是带逗号的字符串格式,需要分割并且放到列表里,用到split()

3. 求内积的公式需要记住,这属于基础知识

4.列表里的数据仍然还是字符串,所以计算的时候,每个元素要单个的用int做

转换,成为证书,也可以用eval

5.题目没要求处理输入的异常,自己可以扩展一下,处理输入的异常,给出错误

提示,不要让程序异常退出。

4.201

在代码模板中给出了程序框架,请按照框架中的说明,完善横线处代

码,不得修改其它代码。

使用 turtle 库的 () 函数和 () 函数绘制套圈,

最小的圆圈半径为 10 像素,不同圆圈之间的半径差是 40 像素。效

果如下图所示。

欢迎下载

4

-

---------------------------------------------------------------

自动评阅说明

使用字符串形式输出 ____①____,____②____,____③____中应填代码即可以

自动评阅得分

例如,如果代码为:

# 代码模板 | # 你的代码import turtle | import

turtle

d = 0 | d = 0for i in range(__1__): | for i in

range(1):

(__2__) | (100)

turtle.__3__ | (100 + (i * 3))

(d) | (d)

则在提交代码页面输入:

print('1', '100', 'fd(100 + (i * 3))')

提交后即可以查看得分

注:如果有运算符,请在运算符两侧加上空格

习题讲解

import turtle

r =10

欢迎下载

5

-

head = 90for i in range (4):

(head)

(r)

r = r + 40

()

会使用turtle库的主要函数,并利用循环结构提高代码简洁性

5.202

在代码模板中给出了程序框架,根据文件内的提示补充完善代码,可

以修改其他代码。

从键盘输入一个中文字符串变量 s,内部包含中文逗号和句号。

问题1:(8分)计算字符串 s 中的中文字符个数,不包括中文逗号

和句号字符。示例如下:

输入:

没有人不爱惜他的生命,但很少人珍视他的时间。

输出:

中文字符数为20。

问题2:(7分)用 jieba 分词后,显示分词的结果,用”/”分隔。并

显示输出分词后的中文词语的个数,不包含逗号和句号。示例如下:

欢迎下载

6

-

输入:

没有人不爱惜他的生命,但很少人珍视他的时间。

输出:

没有/ 人/ 不/ 爱惜/ 他/ 的/ 生命/ 但/ 很少/ 人/ 珍视/ 他/ 的/ 时间/

中文词语数为14

自动评阅要求问题 1 和 2 同时输出,见示例。

输入输出示例

输入

示例

1

没有人不爱惜他的生命,但很少人珍视他的时

间。

输出

没有/ 人/ 不/ 爱惜/ 他/ 的/ 生

他/ 的/ 时间/

中文词语数为14。

中文字符数为

20

习题讲解

import jieba

s = input() # 请输入一个中文字符串,包含逗号和句号

s = e(",","").replace("。","")

n = len(s)

k=(s)

m = len(k)for i in k:

print(i, end= "/ ")print("n中文词语数为{}。".format(m))print("中文字符

数为{}。".format(n))

欢迎下载

7


发布者:admin,转转请注明出处:http://www.yc00.com/web/1713098538a2182642.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信