admin 管理员组

文章数量: 1086019


2024年4月22日发(作者:他人即地狱在线)

试题python资料程序填空阅读填空程序试题

一、程序填空

1.已知圆柱体的底面半径为

r

,高为

h,(

均为正整数

)

,小张编写了一个程序计算圆柱体的

地面周长和面积,圆柱体侧面积以及圆柱体体积,其中圆周率定义为:

3.14

,请根据下列

代码回答问题:

r=int(input(“

请输入半径

r:”))

h=int(input(“

请输入高

h:”))

_________________________

c=2*pi*r

s=pi*r**2

S=c*h

V=s*h

print(c,s,S,V)

(1)

解决问题的程序用到的控制结构有:

__________________

(填:顺序结构、分支结构、

循环结构)

(2)

请将程序补充完整。

(3)

请找出程序中的错误代码,并改正。

____________________________________________

2.完善程序。以下是计算

S=1+6+11+

+101

的程序代码。请你在处填写正确的语句。

s=0

k=1

while(k<=101)

__

s=0

k=1

while(k<101):

k=k+5

s=s+k

print(s+1)

3.(项目情境)在中国古代,出自数学家张丘建的《算经》中这样一个值得研究的问题:

今有鸡翁一

,

直钱五;鸡母一

,

直钱三;鸡雏三

,

直钱一。凡百钱

,

买鸡百只。问鸡翁、母、雏

各几何?这个问题就是著名的“百钱买百鸡问题”。即:现有

100

文钱,公鸡

5

文钱一

只,母鸡

3

文钱一只,小鸡一文钱

3

只,要求:公鸡,母鸡,小鸡都要有,把

100

文钱买

100

只鸡,买的鸡是整数。问公鸡、母鸡和小鸡各几何?

(问题求解)设用变量

g

m

x

三个变量分别存放公鸡、母鸡和小鸡的数量,请阅读如下

程序,在空白处填写适当的表达式或语句,使程序完整。

for g in range(1,20):

for m in _______:

for x in range(3,98,3):

if _________ and __________ ==100:

print("

公鸡:

",g,"

母鸡:

",m,"

小鸡:

",x)

4.计算机解决问题的过程为“分析问题——设计算法(流程图)——编写程序——调试程

序”,

请输入以下代码,自己输入数据运行,结果截图提交

5.请编写一个密码登陆系统,接收用户从键盘输入的密码和你自己的密码进行比对,如果

正确就显示“恭喜你进入系统”如果不正确让用户重新输入,有三次机会。

6.编写一个程序,它将找到所有这些数字,可被

7

整除,但不是

5

的倍数,

2000

年至

3200

(

包括在内

)

。得到的数字应按逗号分隔的顺序打印在一行上。提示

:

考虑使用

range(#begin

#end)

7.编写一个程序,判定用户输入的两个数

a

b

,如果用户输入的第一个数大,则两数互

换,否则原样输出。

8.求

100

以内素数。

9.操作说明:打开文件“

Y:/1/

”,将程序补充完整,不得增加,删除语句、或改变程

序原有结构,操作结束后保存。

以下程序段的功能是:根据从键盘上输入的表示星期几的数字,若输入的数字不是在范围

1

7

)输出“输入错误!”,否则输出对应的英文星期的简称如“

Mon

Tue

Wed

Thu

Fri

Sta

Sun

”。

n=int(input(“

请输入一个数:

”))

list=[ “Mon”,”Tue”,”Wed”,”Thu”,”Fri”,”Sta”,”Sun”]

if ________:

print(“

输入错误!

”)

else:

print(________)

10.操作说明:打开文件“

Y:/2/

”,在代码窗口指定位置

<1>

<2>

处修改完善程序代

码,不得增加、删除语句或改变程序原有结构,操作结束后保存。

以下程序段的功能是:输入一个正整数

n

1

100

),输出它的约数的个数。

s=0

n=int(input(“

请输入一个正整数

:”))

if n<1 or n>100

exit #

输入的数不符合要求,退出

for i in range(1,n+1):

if n//i=0:___<1>

s=s+i <2>

print(“

约数的个数是:

s)

11.操作说明:编写一个程序实现以下功能,将程序以“

Y:/3/

”作为文件名保存。

题目:设计

100

以内的数中能同时被

3

5

整除的个数。

12.地球绕太阳的运行周期为

365

5

小时

48

46

秒(合

365.24219

天),即一回归

年。公历的平年只有

365

天,比回归年短约

0.2422

天,每四年累积约一天,把这一天加于

2

月末(即

2

29

日),使当年的时间长度变为

366

天,这一年就是闰年。判断某一年是

否是闰年的方法是年份数能被

4

整除,但不能被

100

整除,或者年份数能被

400

整除。以

下是一段用于判断某一年是否是闰年的程序。

请将上面程序框中空格处的内容填写完整,其中①处填写代码注释

___________ ______ __________ _______ _______

13.完善程序实现以下功能并保存。

输入一元二次方程的系数a,b,c的值,求解一元二次方程 ax

2

+bx+c=0(a≠0)

#请不要更改源程序的结构,删除原题里的①、②。填写正确的代码,使程序完善

import math

a=float(input("请输入方程系数a(!=0):"))

b=float(input("请输入方程系数b:"))

c=float(input("请输入方程系数c:"))

delta=b*b-4*a*c

if delta>

________

:

x1=(-b+(delta))/(2*a)

x2=(-(delta))/(2*a)

print("

方程有两个不同的解

"

x1

x2)

elif delta==0:

x1=________

print("

方程有两个相同的解

"

x1)

else:

print("

方程无解

")

input("

运行完毕,请按回车键退出

...")

14.将下列程序代码补充完整:

某同学参加了学校体检,体检的医生告诉他体重超重,需要加强运动。该同学了解到运动

时,心率如能控制在一定范围内,对增强心血管系统和呼吸系统的功能都有很好的效果;

超出范围,对身体反而会有损伤。男最适宜运动心率=(

220

-年龄数-安静心率)×

60%

80%

)+安静心率,女最适宜运动心率=(

210

-年龄数-安静心率)×(

60%

80%

)+安静心率,补充程序帮他(她)计算最适宜的运动心率。

age=float

input

'

请输入

age='

))

HRrest=float

input

'

请输入

HRrest='

))

gender=input

(“请输入

male or female

:”)

if ____________________

____________________

else

_____________________

low=

n

-

age

-

HRrest

*0.6+HRrest

high=

n

-

age

-

HRrest

*0.8+HRrest

print

'

最适宜的心率是:

'

low

'~'

high

input

(“运行完毕,请按回车键退出

...

”)

15.为保护环境,很多城市开始对垃圾实行分类,便于更好的进行处理,为了让大家了解

垃圾的分类情况,建立了以下四类列表,

list1

(可回收垃圾)、

list2

(有害垃圾)、

list3

(易腐垃圾),剩下的为其他垃圾,目前,列表中已经存储了以下数据。

list1=["

玻璃瓶

","

旧书

","

金属

","

纸板箱

","

旧衣服

","

易拉罐

"]

list2=["

胶片

","

消毒水

","

纽扣电池

","

水银温度计

","

过期药水

","

泡沫塑料

"]

list3=["

动物内脏

","

菜叶菜梗

","

过期食品

","

香蕉皮

","

果壳

"]

根据现有列表,完成以下问题:

(1)

写出从列表

list3

中取出“过期食品”的表达式:

___________________________________________________________________________

(2)

写出从

list1

中截取

["

旧书

","

金属

","

纸板箱

"]

这一段的表达式:

___________________________________________________________________________

(3)

现又发现一个新的列表如下:

list4=["

过期化妆品

","

过期药品

","

杀虫剂

"],

过判断,里面

存放的为有害垃圾,如何将该列表中的元素添加到

list2

中,请写出相关的表达式:

__________________________________________________________________________

(4)

小明在路上捡到了一个塑料瓶,判断为可回收垃圾,写出相关表达式,将塑料瓶添加到

列表

list1

中:

__________________________________________________________________________

16.学校气象小组使用自动测温仪在校园测量了

1

12

日的气温,并利用

Python

绘制了

这天的气温图,该图如下所示:

1

)在以上

Python

程序中,变量

Y

的数据类型是

_________

2

)在以上

Python

程序中,第

8

行横线处的代码是

_________

3

)通过观察,气温釆样间隔时间是

_________

个小时。

17.某品牌手机第一年销量为

20000

台,假设平均每年的销量比上一年增加

68%

,请问几

年后能使总销量达到

60000

台。下面的程序能实现上述的功能,请将缺失的代码补充完

整。

total= every_year=20000

year=1

while __________________ :

every_year + = ____________

total + = every_year

year + = 1

print(year)

18.小敏有

10

万元本金,想要购买银行保证收益型理财产品。每年到期后连本带利仍购买

此种理财。请你帮助小敏分析,在年收益率不变的情况下,多少年后小敏的累计收益能超

过本金,请完成程序填空。(例如输人:

5.15%,

输出:

14

年后收益超过本金。)

1 s=input("

请输入年利率:")

2 rate=float(s[:-1])*0.01

3 money=100000

4 year=0

5 while money<=200000:

6 money=round

),

2)

7 year=year+1

8 print(year,"

年后收益超过本金。

1)

程序第

6

行下划线处应填入

___________

2)

程序第

2

行的作用是

____________

,并赋值给变量

rate

3)

该程序主要是通过

while

实现

____________

结构。

19.辗转相除法,又称欧几里德算法,用于计算两个正整数

m

n

的最大公约数。它是已

知最古老的算法,其可追溯至公元前

300

年前。

辗转相除法的算法步骤是,对于给定的两个正整数

m

n

m>n

),用

m

除以

n

得到余数

r,若余数

r

不为

0

,就将

n

r

构成新的一对数(

m=n

n=r

),继续上面的除法,直到余

数为

0

,这时m就是原来两个数的最大公约数。因为这个算法需要反复进行除法运算,故

被形象地命名为“辗转相除法”。小曲设计了辗转相除法的算法,请根据下面算法回答问

题。

描述一

描述二

描述三

①输入两个正整数

m,n

m>n

);

②计算

m

除以

n

所得的

余数

r

m=n,n=r

④若

r=0,

m,n

的最大公

约数等于

m

;否则转到

步骤②;

⑤输出最大公约数

m;

⑥结束。

1

)描述一是

________

描述法;描述二是流程图描述法;描述三是计算机程序语言描述

法。

2

)在描述三中代码

4

6

行作用是

__________

3

)在描述三程序设计中,补充代码第

8

行划线处为

__________

20.(项目情境)递归就是自己调用自己,它是设计和描述算法的一种有力工具,常常用

来解决比较复杂的问题。为求解规模为

N

的问题,设法将它分解成规模较小的问题,从小

问题的解容易构造出大问题的解,并且这些规模问题较小的问题也能采用同样的分解方

法,分解成规模更小的问题,并能从这些更小问题的解构造出规模较大问题的解。一般情

况下,规模

N=1

时,问题的解是已知的。已知:从

1

n

的连续自然数相乘的积、叫做阶

乘、用符号

n!

表示。如

5!=1

×

2

×

3

×

4

×

5,

规定

0!=1

。我们用递归算法可以较容易求

n

阶乘。求

n

的阶乘算法可以描述如下:

n!=n*(n-1)! (n-1)!=(n-1)*(n-2)! (n-2)!=(n-2)*(n-3)!

2!=2*1! 1!=0! 0!=1

如果把

n!

写成函数形式,即

f(n)

f(n)=n*f(n-1)

。如

f(5)

就是表示

5!

,求

5!

的过程可以写成

如下形式:

f(5)=5*f(4) f(4)=4*f(3) f(3)=3*f(2) f(2)=2*f(1) f(1)=1

(问题求解)在

python

中用递归算法求

1

+2

+

……

+n

!(

n

的值为整数,从键盘输

入)。请阅读如下程序,在空白处填写适当的表达式或语句,使程序完整。

def f(n):

if n==0:

return 1

else:

return _________

s=0

n=int(input("

请输入

n

"))

for i in_______:

s=________

print(s)

21.水仙花数是指一个三位数,它的每个位上的数字的

3

次方之和就等于它本身,例如:

1**3+5**3+3**3=153

。这类三位数也被叫做自恋数、自幂数或者阿姆斯特朗数。

[

问题求解

]

设这个数存放于变量

x

中,变量

g

s

b

分别存放个位、十位、百位上的数。需

得分离数字得到每位上的数,即将变量

g

s

b

表示为

x

的形式。请阅读如下

python

序,在空白处填写适当的表达式或语句,使程序完整。

print

"

三位数之内的水仙花是:

"

for x in___

100

1000

):

b=x//100

s=

x//10

___

g=___

If x=

b**3 +s**3+g**3

):

print

___

22.(项目情境)水仙花数是指一个三位数,它的每个位上的数字的

3

次方之和就等于它

本身,例如:

1**3+5**3+3**3 = 153

。这类三位数也被叫做自恋数、自幂数或者阿姆斯特朗

数。

(问题求解)设这个数存放于变量

x

中,变量

g

s

b

分别存放个位、十位、百位上的

数。需得分离数字得到每位上的数,即将变量

g

s

b

表示为

x

的形式。请阅读如下

python

程序,在空白处填写适当的表达式或语句,使程序完整。

print ("

三位数之内的水仙

花是

:")

for x in _____ :

b=x//100

s=_____

g=_____

if x==(b**3 + s**3 + g**3):

_____

23.小强想要快速了解“十四五规划”内容的关键词,他先把“十四五规划”内容存储在

文档中,如图

a

所示,统计文档中出现次数最多的前十个关键词,结果如图

b

示。文本数据处理的算法设计如图

c

所示,用

Python

语言编写的程序段如图

d

所示。

请根据流程图的每个步骤,填写程序段编号,如

A

:⑦

B

:①

D

:③。现填写

C

E

F

G

对应的程序段编号.

C

__________E

__________F

__________G

__________

a

b

c

d

24.阅读程序。分析以下两段

Python

程序并回答问题。

#

程序

1

i=1

while i<101:

print('

把这句话打印

100

')

i+=1

#

程序

2

i=100

while i:

print('

把这句话打印

100

')

i=i-2

1

)在程序

1

中,

i+=1

这句话的含义是

______________

2

)在程序

1

中,

把这句话打印

100

实际输出了

_____

遍。

3

)在程序

2

中,

i

的初值是

___

4

)在程序

2

中,

把这句话打印

100

实际输出了

_____

遍。

5

)在程序

2

中,

while i

的含义是

_________

25.编写

Python

程序实现如下功能:输入年月日,输入格式如“

2021

-

06

-

21

”,年月日之

间用“-”分隔。判断这一天是这一年的第几天。以

2021

-

06

-

21

为例,前面

5

个月总天

数,加上

21

天即这一天是本年的第几天。特殊情况,当输入的年份是闰年时,

2

月份有

29

天。闰年的判断方式如下:

I

、能被

4

整除,但不能被

100

整除;

II

、能被

400

整除;

1

)“

2020

-

05

-

20

”这一天是这一年的第

_________

天。

2

)编写

Python

代码如下,在划线处填入正确的代码

_________________

_________________

_________________

3

)加框处的代码有误,请改正。

改正:

_________________

mon=[31, 28, 31, 30, 31, 30,31, 31, 30, 31, 30,31] #mon

中存储

1

-

12

每个月的天数

s=input("

请输入年月日

: ")

'month=int(s[5:7])

sum=0

for i in range(

):

sum+=mon[i]

sum+=day

if

isleap=True

else:

isleap=False

if

sum+=1

print("

这一天是当年的第

" +str (sum)+''

'')

26.请编写

Python

程序,实现如下功能需求:

1

)程序运行后,给出文字提示:“请输入一个正整数:”

2

)输入一个整数

n

按回车后,程序输出从

1

-

n

所有整数中既是

3

的倍数又是

5

的倍数的

数。

3

)不要超过

5

行代码。

程序运行举例:

:


本文标签: 程序 输入 问题 算法