• 华南理工大学 Python第5章课后小测2


    1、(单选)下面语句的输出结果是:
    ls = []    
    def func(a, b):
        ls.append(b)   
        return a*b
    s = func("hi", 2)
    print(s, ls)
    (本题分数:3)
    A) hi []
    B) hi [2]
    C) hihi []
    D) hihi [2]
    您的答案:D  正确率:100%

    2、(单选)以下哪个函数的定义是错误的?(本题分数:3)
    A) def vfunc( ):
    B) def vfunc(a=1,b):
    C) def vfunc(a,b):
    D) def vfunc(*a,b):
    您的答案:D  正确率:100% 

    3、(单选)关于以下程序,说法正确的个数有()个。
    def count (N):
        if (N <= 0):
            return "请输入一个正整数"
        if (N > 9):
            return "计数结束"
        else:
            return count(N+1)
    print(count(6))

    (1)count是一个递归函数;(2)函数的基例是N <= 0;(3)函数的基例是N > 9;(4)调用count(6)时,count函数返回前被调用5次;(5)调用count(6)时,count函数返回前被调用4次;(本题分数:3)
    A) 1个
    B) 2个
    C) 3个
    D) 4个

    【解析】1,3,4正确,2,5错误
    您的答案:C  正确率:100% 

    4、(单选)以下程序运行时,将输出()。
    def my_function(s,*ks):
      print(ks[0])
    my_function("a", "b", "c")
    (本题分数:3)
    A) "a"
    B) "b"
    C) "c"
    D) 无法运行,程序出错
    您的答案:B  正确率:100%

    5、(单选)以下程序的输出结果是。
    def test():
        return 'abc', 100, [0, 1, 2]
    a, b, c = test()
    print(a)
    (本题分数:3)
    A) 'abc'
    B) 100
    C) [0, 1, 2]
    D) 程序报错
    您的答案:A  正确率:100%

    6、(单选)定义以下函数f,函数调用出错的是。
    def f(s):
        return s+s
    (本题分数:3)
    A) f([1,2])
    B) f('a')
    C) f((1,2))
    D) f({1,2})
    您的答案:D  正确率:100%

    7、(单选)递归函数有什么特点?(本题分数:3)
    A) 包含一个循环结构
    B) 函数比较复杂
    C) 函数内部包含对本函数的再次调用
    D) 函数名称作为返回值
    您的答案:C  正确率:100%

    8、(单选)以下关于递归函数基例的说法错误的是(  )。(本题分数:3)
    A) 递归函数必须有基例
    B) 递归函数的基例不再进行递归
    C) 每个递归函数都只能有一个基例
    D) 递归函数的基例决定递归的深度
    您的答案:C  正确率:100%

    9、(单选)下面不属于递归特征的是。(本题分数:3)
    A) 存在一个或多个基例
    B) 基例不需要再次递归
    C) 基例需要多次递归循环
    D) 所有递归链要以一个或多个基例结尾
    您的答案:C  正确率:100%

    10、(单选)以下对递归描述错误的是。(本题分数:3)
    A) 书写简单
    B) 执行效率高
    C) 一定要有基例
    D) 递归程序都可以有非递归编写方法
    您的答案:B  正确率:100%

    11、(单选)对下列代码描述正确的是:
    def reverse (s):
       return  reverse  (s[1:])+s[0]
    (本题分数:3)
    A) 代码的作用是实现字符串的连接
    B) s[0]是基例
    C) 代码中只有一个基例
    D) 运行会出错
    您的答案:D  正确率:100%

    12、(单选)对下列代码描述错误的是:
    def reverse (s):
        if s=="":
            return s
        else:
            return  reverse  (s[1:])+s[0]
    (本题分数:3)
    A) 代码的作用是实现字符串的反转
    B) 基例是空字符串
    C) 基例是s[0]
    D) s[1:]是除首字母外的剩余字符串
    您的答案:C  正确率:100%

    13、(单选)以下关于模块化设计描述错误的是:(本题分数:3)
    A) 应尽可能合理划分功能块,功能块内部耦合度高
    B) 应尽可能合理划分功能块,功能块内部耦合度低
    C) 模块间关系尽可能简单,模块之间耦合度低
    D) 高耦合度的特点使复用较为困难
    您的答案:B  正确率:100%

    14、(单选)下面关于函数的说法,正确的是。(本题分数:3)
    A) 函数可以不定义,就可以直接使用
    B) 函数是程序的抽象,通过封装实现代码复用,可以利用函数对程序进行模块化设计
    C) 函数定义的位置没有要求,可以先调用,最后对函数定义
    D) 函数不可以对自己调用,只能调用别的函数
    您的答案:B  正确率:100%

    15、(单选)下列哪项不适合使用递归实现?(本题分数:3)
    A) n!=n(n-1)(n-2)...(1)
    B) sum(n)=1+2+3+4+5....+n
    C) pi(n)=3.1415926........(保留n位小数)
    D) 绘制科赫曲线
    您的答案:C  正确率:100%

    16、(单选)关于以下程序,说法正确的个数有()个。
    cnum= 1
    acc= 0
    def rsum():
        global cnum
        global acc
        if cnum== 6:
            return acc
        else:
            acc = acc + cnum
            cnum = cnum + 1
            return rsum()

    (1)rsum是一个递归函数;(2)函数的基例是cnum ==6;(3)调用rsum()时,rsum函数返回前被调用5次;(4)调用rsum()时,函数返回值是21;(本题分数:3)
    A) 1
    B) 2
    C) 3
    D) 4

    【解析】(1)(2)(3)正确,(4)错误,返回值是15
    您的答案:C  正确率:100% 

    17、(单选)给定函数定义def vfunc(a,*b),以下函数调用错误的是()。(本题分数:3)
    A) vfunc( )
    B) vfunc(1)
    C) vfunc(1,2)
    D) vfunc(1,2,3,4)
    您的答案:A  正确率:100%

    18、(单选)给定函数定义
    def f(s):
        return s+s

    函数调用时,参数不可以是()。(本题分数:3)
    A) 列表类型
    B) 集合类型
    C) 元组类型
    D) 字符串类型
    您的答案:B  正确率:100%

    19、(单选)
    c=1     
    def add():
        c=100
        return c+1 

    给定以上程序,说法正确的是()。(本题分数:3)
    A) 调用add()以后,c的值为1
    B) 调用add()以后,c的值为100
    C) 调用add()以后,c的值为101
    D) 函数add()的返回值是2
    您的答案:A  正确率:100%

    20、(单选)下面语句的输出结果是:
    n = 0   
    def func(a,b):
        n = b     
        return a+n
    s = func(1, 2)
    print(s, n)
    (本题分数:3)
    A) 1 0
    B) 1 2
    C) 3 0
    D) 3 2
    您的答案:C  正确率:100%

    21、(写运行结果)下列程序的运行结果是?
    x = 54321
    y = 0
    fac = 10000
    while x:
        y += fac*(x%10)
        x = x//10
    print(y)
    print(x+y)
    (本题分数:3)

    【参考答案】


    22、(写运行结果)写出下列程序的执行结果
    a,b,c=-2,4,6 
    s,w,t=1,3,5 
    if c>0: 
        s=a+b 
    if a<=0: 
        if c<=0: 
            w=a-b 
    else: 
        if c>0: 
            w=a-b 
        else: 
            t=c 
    c=a+b 
    print("a={},b={},c={}".format(a,b,c)) 
    print("s={},w={},t={}".format(s,w,t))
    (本题分数:3)

    【参考答案】


    23、(程序填空)下列代码计算0~99的累加和,并输出。请完善程序缺失的部分
    sum = 0
    for i in range(__(1)__):
        sum = __(2)__
    print(sum)
    (本题分数:3)

    【参考答案】


    24、(程序填空)下面代码统计1~100以内的能被3整除的数的个数。请在(1),(2)填上合适的语句。
    sum = 0
    i = 100
    while i>0:
        if __(1)__:
            sum =  sum + 1
        __(2)__
    print(sum)
    (本题分数:3)

    【参考答案】


    25、(程序填空)使用循环输出等腰三角形。请在(1)、(2)填入合适的内容。例如给定5,输出如下结果:
         *
        ***
       *****
      *******
     *********
    len = eval(input("输入要打印的行数:"))
    for i in __(1)__(len):
        for j in range(0, len - i):
            print(end=" ")
        for t in range(2 * i + 1):
            print("*", end="")
        __(2)__
    (本题分数:3)

    【参考答案】


    26、(程序填空)以下程序判断一个数是否是素数,请在 (1)、(2)、(3)填写合适的内容。
    m=eval(input("请输入一个整数:"))
    t=0
    for i in range(2,__(1)__):
        if m%i==0:
           t=1
           __(2)__               #退出循环
    if t==__(3)__:
        print(m,"是素数")
    else:
        print(m,"不是素数")
    (本题分数:3)

    【参考答案】


    27、(程序填空)下列代码完成这样一个功能:输入一个正整数,输出它的因子分解式。如输入132,则输出132=1*2*2*3*11. 请在(1)、(2)、(3)处填上合适内容补全程序 
    n=eval(input("请输入一个正整数:")) 
     
    s=str(n)+"=1"    #保存结果,最后再输出 
     
    a=2 
    while n>=a: 
        if  __(1)__: 
            s=s+"*"+ __(2)__ 
            n=n//a 
        else: 
           __(3)__
    print(s)
    (本题分数:3)

    【参考答案】


    28、(程序填空)下列代码输出m个1-10范围内的随机浮点数,计算并显示其平均值。请在(1)、(2)、(3)处填上合适内容补全程序
    import random 
    __(1)__.seed(100) 
    m=eval(input()) 
    s=0 
    for j in range(m): 
        f=random.uniform(__(2)__) 
        s+=f 
        print(f) 
    print('平均值是:',__(3)__)
    (本题分数:3)

    【参考答案】


    29、(程序填空)输入整数n,计算12+22+...+n2的值。请在下列(1),(2)填上合适的内容。
    def __(1)__:
        sum = 0
        for i in range(n):
            sum = sum + __(2)__
        return sum
    n = int(input("请输入数字:"))
    r = f(n)
    print("1~{}的平方和是{}".format(n, r))
    (本题分数:3)

    【参考答案】


    30、(程序填空)以下程序以递归方式计算斐波那契数列的值。程序获取用户输入的正整数N,如果将斐波那契数列表示为fib(N),斐波那契数列值的计算如下: fib(1)和fib(2)的值是1,当N>2时,fib(N) = fib(N-1) + fib(N-2)。
    ‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬
    def fib(n):
        if __(1)__:
            return 1 
        else:
            return __(2)__ + __(3)__
    n = eval(input(“输入正整数N”))
    print(fib(n))
    (本题分数:3)

    【参考答案】


    31、(程序填空)以下程序实现字符串的反转,即对于用户输入的字符串s,输出反转后的字符串。例如:s=”ABC”,程序输出”CBA”。请在(1),(2)处填上合适的语句。
    def reverse(s):
        if __(1)__: 
            return s
        else:
            return __(2)__+ s[0]
    str = input("请输入一个字符串: ")
    print(reverse(str))
    (本题分数:3)

    【参考答案】


    32、(程序填空)下面代码实现比较两数大小并且输出较大的那个,请完成填空
    def myMax(a,b):
        if __(1)__:
            return a
        else:
            __(2)__
    
    a = eval(input())
    b = eval(input())
    
    print(myMax(a,b))
    (本题分数:3)

    【参考答案】


    33、(程序填空)下面递归函数mul计算输出1到n的连乘结果,请完善空格。
    def mul(n):
        if n==1:
            __(1)__
        else:
            __(2)__
    
    n = int(input())
    print(mul(n))
    (本题分数:4)

    【参考答案】

  • 相关阅读:
    mysql权限管理
    centos 6.5安装node.js
    sublime 配置jade高亮显示
    解决国内npm依赖包安装慢的问题
    sublime text3配置node.js开发环境
    datepicker 时间戳转换问题
    关于c++正则表达式的用法
    Android系统binder机制的研究分析
    TCP/IP的分层复用问题
    关于设计模式中外观模式的研究以及关于设计模式中四大原则的理解
  • 原文地址:https://www.cnblogs.com/alphainf/p/16270496.html
Copyright © 2020-2023  润新知