1、以下关于递归函数基例的说法错误的是:
A、递归函数必须有基例
B、每个递归函数都只能有一个基例
C、递归函数的基例决定递归的深度
D、递归函数的基例不再进行递归
2、以下选项不是函数作用的是:
A、提高代码执行速度
B、增强代码可读性
C、复用代码
D、降低编程复杂度
3、下列程序的输出结果为
def f(a,b):
a=4
return a+b
def main():
a=5
b=6
print(f(a,b),a+b)
main()
A、11 10
B、10 10
C、10 11
D、11 11
4、以下关于Python函数说法错误的是
def func(a,b):
c=a**2+b
b=a
return c
a=10
b=100
c=func(a,b)+a
A、执行该函数后,变量a的值为10
B、执行该函数后,变量c的值为200
C、该函数名称为func
D、执行该函数后,变量b的值为100
5、以下关于函数调用描述正确的是:
A、函数在调用前不需要定义,拿来即用就好
B、自定义函数调用前必须定义
C、函数和调用只能发生在同一个文件中
D、Python内置函数调用前需要引用相应的库
6、以下关于模块化设计描述错误的是:
A、高耦合度的特点是复用较为困难
B、模块间关系尽可能简单,模块之间耦合度低
C、应尽可能合理划分功能块,功能块内部耦合度高
D、应尽可能合理划分功能块,功能块内部耦合度低
7、以下对递归描述错误的是:
A、书写简单
B、执行效率高
C、递归程序都可以有非递归编写方法
D、一定要有基例
8、以下关于函数说法错误的是:
A、函数可以看做是一段具有名字的子程序
B、对函数的使用必须了解其内部实现原理
C、函数通过函数名来调用
D、函数是一段具有特定功能的、可重用的语句组
9、哪个选项对于函数的定义是错误的?
A、def vfunc(a,b=2):
B、def vfunc(a,*b):
C、def vfunc(a,b):
*D、def vfunc(a,b):
10、关于return语句,以下选项描述正确的是:
A、函数中最多只有一个return语句
B、return只能返回一个值
C、函数必须有一个return语句
D、函数可以没有return语句
随机密码生成
描述
补充编程模板中代码,完成如下功能:
以整数17为随机数种子,获取用户输入整数N为长度,产生3个长度为N位的密码,密码的每位是一个数字。每个密码单独一行输出。
产生密码采用random.randint()函数。
输入:3
输出:
634
524
926
import random
def genpwd(length):
a = 10**(length-1)
b = 10**length - 1
return "{}".format(random.randint(a, b))
length = eval(input())
random.seed(17)
for i in range(3):
print(genpwd(length))
连续质数计算
描述
补充编程模板中代码,完成如下功能:
获得用户输入数字N,计算并输出从N开始的5个质数,单行输出,质数间用逗号,分割。
注意:需要考虑用户输入的数字N可能是浮点数,应对输入取整数;最后一个输出后不用逗号。
输入:12
输出:13,17,19,23,29
def prime(m):
for i in range(2,m):
if m%i==0:
return 0
return 1
b=eval(input())
n=int(b)
if n!=b:
n=n+1
count=0
while count<5:
if(prime(n)):
count =count+1
if count !=1:
print(",",end="")
print(n,end="")
n +=1