华南理工大学 Python第5章课后小测-1

1、(单选)以下哪个函数的定义是错误的?(本题分数:2)
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)

【参考答案】

posted @ 2022-05-14 16:17  AlphaInf  阅读(5954)  评论(0编辑  收藏  举报