华南理工大学 Python第5章课后小测-1
A) def vfunc(a,b=2):
B) def vfunc(a,b):
C) def vfunc(a,*b):
D) def vfunc(*a,b):
您的答案:D 正确率:100%
2、(单选)以下程序运行时,将输出()。
def my_function(*ks):
print(ks[-1])
my_function("a", "b", "c")
(本题分数:2)
A) “abc”
B) “a”
C) “c”
D) 无法运行,程序出错
您的答案:C 正确率:100%
3、(单选)以下程序的输出结果是。
def test():
return 'abc', 100, [0, 1, 2]
a, b, c = test()
print(c)
(本题分数:2)
A) c
B) 0
C) [0,1,2]
D) 程序报错
您的答案:C 正确率:100%
4、(单选)定义以下函数f,函数调用出错的是。
def f(s):
return s*2
(本题分数:2)
A) f(2)
B) f(‘a’)
C) f((‘a’))
D) f({‘a’})
您的答案:D 正确率:100%
5、(单选)关于lambda函数,哪个选项的描述是错误的?(本题分数:2)
A) 匿名函数
B) 将函数名作为函数结果返回
C) 定义了一种特殊的函数
D) lambda不是Python的保留字
您的答案:D 正确率:100%
6、(单选)以下选项不是函数作用的是( )。(本题分数:2)
A) 提高代码执行速度
B) 复用代码
C) 增强代码可读性
D) 降低编程复杂度
您的答案:A 正确率:100%
7、(单选)假设函数中不包括global保留字,下面对于改变参数值的方法,哪个是不正确的?(本题分数:2)
A) 参数是列表类型时,改变原参数的值
B) 参数是整数类型时,不改变原参数的值
C) 参数是组合类型(可变对象)时,改变原参数的值
D) 参数的值是否改变与函数中对变量的操作有关,与参数类型无关
您的答案:D 正确率:100%
8、(单选)在Python中有关函数的表达中正确的是。(本题分数:2)
A) 一个函数中只允许有一条return语句
B) Python中,def和return是函数必须使用的保留字
C) Python函数定义中没有对参数指定类型,这说明,参数在函数中可以当作任意类型使用
D) 函数eval()可以用于数值表达式求值,例如eval(“2*3+1”)
您的答案:D 正确率:100%
9、(单选)下列程序的输出结果为:
def f(a,b):
a=4
return a+b
def main():
a=5
b=6
print(f(a,b),a+b)
main()
(本题分数:2)
A) 10 11
B) 11 11
C) 10 10
D) 11 10
您的答案:A 正确率:100%
10、(单选)以下关于Python函数说法错误的是:
def func(a,b):
c=a**2+b
b=a
return c
a=10
b=100
c=func(a,b)+a
(本题分数:2)
A) 执行该程序后,变量c的值为200
B) 该函数名称为func
C) 执行该程序后,变量b的值为100
D) 执行该程序后,变量a的值为10
您的答案:A 正确率:100%
11、(单选)Python中关于全局变量和局部变量描述不正确的是()。(本题分数:2)
A) 一个程序中的变量包含两类:全局变量和局部变量
B) 全局变量一般没有缩进
C) 全局变量在程序执行的全过程有效
D) 全局变量不能和局部变量重名
您的答案:D 正确率:100%
12、(单选)以下关于函数调用描述正确的是( )。(本题分数:2)
A) 函数在调用前不需要定义,拿来即用就好
B) 函数和调用只能发生在同一个文件中
C) 自定义函数调用前必须定义
D) Python内置函数调用前需要引用相应的库
您的答案:C 正确率:100%
13、(单选)下面语句的输出结果是。
>>>f=lambda x,y:y+x
>>>f(10,10)
(本题分数:2)
A) 10
B) 20
C) 10,10
D) 100
您的答案:B 正确率:100%
14、(单选)下列关于形参和实参的说法正确的是( )。(本题分数:2)
A) 函数定义中参数列表里面的参数是实际参数,简称实参
B) 参数列表中给出要传入函数内部的参数,这类参数称为形式参数,简称形参
C) 程序在调用时,将实参复制给函数的形参
D) 程序在调用时,将形参复制给函数的实参
您的答案:C 正确率:100%
15、(单选)关于return语句,以下选项描述正确的是( )。(本题分数:2)
A) 函数中最多只有一个return语句
B) 函数必须有一个return语句
C) return只能返回一个值
D) 函数可以没有return语句
您的答案:D 正确率:100%
16、(单选)使用函数的目的是。(本题分数:2)
A) 降低编程难度和代码重用
B) 降低功能难度和代码复用
C) 提高功能难度和代码重用
D) 提高编程难度和代码复用
您的答案:A 正确率:100%
17、(单选)以下关于函数说法错误的是( )。(本题分数:2)
A) 对函数的使用必须了解其内部实现原理
B) 函数通过函数名来调用
C) 函数是一段具有特定功能的、可重用的语句组
D) 函数可以看做是一段具有名字的子程序
您的答案:A 正确率:100%
18、(单选)关于函数参数的说法,错误的是( ).(本题分数:2)
A) 在函数定义时,有些参数可存在默认值
B) 在函数定义时,可设计可变数量参数
C) 调用函数时,如果指定了参数名称,参数之间的顺序可以任意调整
D) 调用函数时, 如果没有指定参数名称,参数之间的顺序可以任意调整
您的答案:D 正确率:100%
19、(单选)以下程序的执行结果是()。
def f(s):
return s+s
print(f((1,2)))
(本题分数:2)
A) 3
B) (1,2)
C) (1, 2, 1, 2)
D) 程序报错
您的答案:C 正确率:100%
20、(单选)以下程序的执行结果是()。
c=1
def add():
c=100
return c+1
print("{},{}".format(add(),c))
(本题分数:2)
A) 101,100
B) 101,1
C) 2,1
D) 2,100
您的答案:B 正确率:100%
21、(单选)给定函数定义def vfunc(a,*b),以下函数调用错误的是()。(本题分数:2)
A) vfunc( )
B) vfunc(1)
C) vfunc(1,2)
D) vfunc(1,2,3,4)
您的答案:A 正确率:100%
22、(填空)下列程序段执行后,s的值是 11 , i的值是 6 。
s = 0
for i in range(2,7):
if i%2==1:
s = s + i
else:
s = s + 1
(本题分数:4)
您的答案:【1】11 【2】6 正确率:100%
23、(填空)下列程序段执行后,s的值为 9 。
s = 0
for i in range(1,20,3):
if i%5==0:
continue
elif i>8:
break
else:
s = s -1
s = s + i
else:
s = s + 10
(本题分数:4)
您的答案:【1】9 正确率:100%
24、(填空)下列程序的运行结果是 scuttsscutt 。(结果不用写单引号或双引号)
for i in range(3):
for s in "scut":
print(s,end="")
if i==1:
break
else:
print(s,end='')
(本题分数:4)
您的答案:【1】scuttsscutt 正确率:100%
25、(填空)下列程序的运行结果是 chicchi2 。
for i in range(3):
for s in "china":
print(s,end="")
if i==1 or s=="i":
break
else:
print(s,end='')
else:
print(i)
(本题分数:4)
您的答案:【1】chicchi2 正确率:100%
26、(填空)下列程序的运行结果是 chch2 。
for i in range(3):
for s in "china":
if i==1 or s=="i":
break
print(s,end="")
else:
print(s,end='')
else:
print(i)
(本题分数:4)
您的答案:【1】chch2 正确率:100%
27、(填空)下列程序段执行后,s的值是 5 , i的值是 6 。
s = 0
for i in range(2,7):
if i%2==1:
s = s + i
else:
s = s - 1
(本题分数:4)
您的答案:【1】5 【2】6 正确率:100%
28、(填空)下列代码循环遍历列表fruits中的每个元素。
fruits = [“apple”, “banana”, “cherry”]
for x in fruits :
print(x)(本题分数:4)
您的答案:【1】for 【2】in 【3】: 正确率:100%
29、(填空)以下程序将一个字符串反向输出,请填上合适的内容。第一个空不能填写纯数字。
txt=”Hello World”
for c in range( len(txt)-1 , -1 ,-1):
print(txt[c], end=””)
print(“\n”)(本题分数:5)
您的答案:【1】len(txt)-1 【2】-1 正确率:100%
30、(填空)下列程序的执行结果是 chinaachichinaa2 。
for i in range(3):
for s in "china":
print(s,end="")
if i==1 and s=="i":
break
else:
print(s,end='')
else:
print(i)
(本题分数:5)
您的答案:【1】chinaachichinaa2 正确率:100%
31、(填空)下列程序段,当score的值为85时,grade的值为 ‘D’ 。
if score<=90:
grade='A'
if score<=80:
grade='B'
if score<=70:
grade='C'
else:
grade='D'
(本题分数:5)
【解析】当条件有关联时,不要使用独立的if语句,要用if..elif..else
您的答案:【1】’D’ 正确率:100%
32、(写运行结果)写出下列程序的运行结果。
for s in "scut":
if s=="c":
continue
for i in range(5):
print(s,end='')
if i==2 or s=='u':
break
(本题分数:5)
【参考答案】
33、(写运行结果)写出下列程序的输出结果。
s=0
for i in range(1,10):
s=s+i
if i % 5==0 :
print(i*i)
break
else:
s=s+i
print(i)
print(s)
(本题分数:5)
【参考答案】
【解析】当执行break语句后,else后面的语句就不再执行了
34、(写运行结果)下列代码的运行结果是什么?
a = [1,2,3,4]
for i in a:
if i%2==0:
print(i)
(本题分数:5)
【参考答案】