内容正文:
第四节 函数与模块、简单算法及其程序实现
一尧选择题
1. 下列程序段定义的函数 fact用于计算 n! 渊如
10! =1伊2伊3伊4伊5伊6伊7伊8伊9伊10冤:
def fact(n):
i=1
f=1
while i<=n:
f=f*i
i=i+1
该程序段画线处应填入的代码为 渊 冤
A. return f B. return
C. f D. f return
2. 在以下程序中引入 Python 的 math 模块袁使
用 math模块下的 floor函数对命令行输入的
实数进行取整院
n=input("请输入一个实数:")
n2=math.floor(float渊n))
print(n2)
该程序段画线处应填入的代码为 渊 冤
A. import B. math
C. import math D. import math.floor
3. 下列 Python程序段用于求 圆个正整数渊均小
于 10000冤的最大公约数院
def gcd(a,b):
while a! 越b:
if a>b:
a越a原b
else:
b越b原a
return b
x越int(input("请输入第 1个正整数:"))
y越int(input("请输入第 2个正整数:"))
裕调用函数 gcd
print(z)
该程序段画线处应填入的代码为 渊 冤
A. z越gcd(x,y) B. z越gcd(a,b)
C. z越gcd D. z越gcd(b)
4. 以下程序段定义的函数 btoh接受一个 4位
二进制数的字符串袁函数返回该二进制数对
应的十六进制数院
def btoh(b):
hs="0123456789ABCDEF"
s=0
for c in b:
s=s*2+int(c)
return
该程序段画线处应填入的代码为 渊 冤
A. btoh B. btoh咱s暂
C. hs咱s暂 D. hs
5. 用下面的程序段在列表 numbers 中生成 10
个咱1,10暂范围内的不重复的随机整数院
from random import randint
numbers=10*咱0暂
gens=10*咱False暂
i=0
while i<=9:
n=randint(1,10)
if not gens咱n-1暂:
numbers咱i暂=n
i+=1
该程序段画线处应填入的代码为 渊 冤
A. gens咱n暂=True
B. gens咱n-1暂=True
C. gens咱n+1暂=True
D. gens咱n暂=False
6. 下列问题适合用解析算法求解的是 渊 冤
A. 寻找一堆彩球中的所有红球
B. 计算一个球从 100米高的楼顶掉下来落
地时的速度
75
C. 将全班同学根据身高从低到高排队
D. 统计 10000 以内各位数字之和是 18 的
偶数个数
7. 使用枚举算法解决问题时袁在列举问题可能
解的过程中做到 渊 冤
A. 不能遗漏袁但可以重复
B. 不能遗漏袁也不应该重复
C. 可以遗漏袁但不应该重复
D. 可以遗漏袁也可以重复
8. 若用整型变量 xq表示某天是星期几袁例如院
xq=1 表示该天是星期一袁xq=2 表示该天是
星期二袁噎噎袁xq=7 表示该天是星期日袁则
表示当前 xq的前一天是星期几的 Python语
句是 渊 冤
A. (xq-1)%7 B. xq%7
C. xq%7+1 D. (xq+5)%7+1
9. 用枚举算法求解野找出所有满足各位数字之
和等于 5的三位数冶时袁在下列所列举的数
值范围内袁算法执行效率最高的是 渊 冤
A. 从 0到 999 B. 从 100到 999
C. 从 100到 500 D. 从 104到 500
10. 有如下 Python程序院
sum=0
for i in range(1,101):
if (i+1)/2==(i+1)//2:
sum+=i
print(sum)
运行上面程序袁变量 sum存储的是 1到 100
之间的 渊 冤
A. 偶数之和 B. 偶数个数
C. 奇数之和 D. 奇数个数
11. 有如下 Python程序段院
s="M6st-udYyn"
t=""
for i in range(len(s)):
if "a"<=s咱i暂 and s咱i暂<="z":
t+=s咱i暂
print(t)
该程序段的功能是输出字符串 s 中的
渊 冤
A. 小写字母个数 B. 所有小写字母
C. 所有数字之和 D. 所有非数字字符
12. 渊2022窑湖丽衢高三联考冤某 Python程序如
下院
def output(s,n):
if n==0:
return
print(s咱n-1暂,end="")
output(s,n-1)
s=input("input a stri