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)

【参考答案】
150000
150000
评分标准:2行,1行50分。少一行多一行每行扣50分;


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)

【参考答案】
a=-2,b=4,c=2
s=2,w=3,t=5


23、(程序填空)下列代码计算0~99的累加和,并输出。请完善程序缺失的部分

sum = 0
for i in range(__(1)__):
sum = __(2)__
print(sum)

(本题分数:3)

【参考答案】
(1) 100
(2) sum+i
评分标准:2个空,一个空50分。


24、(程序填空)下面代码统计1~100以内的能被3整除的数的个数。请在(1),(2)填上合适的语句。

sum = 0
i = 100
while i>0:
if __(1)__:
sum = sum + 1
__(2)__
print(sum)

(本题分数:3)

【参考答案】
(1) i%3==0
(2) i = i - 1
评分标准:2个空,一个空50分,表达式不同于参考答案,但是能正确计算出结果,也给满分


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)

【参考答案】
(1)range
(2)print()
评分标准:共2空,每空50分。写错字母不给分,print()语句少了()给30分。


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)

【参考答案】
(1)m
(2)break
(3)0
评分标准:共3个空。(1)、(3)空各30分,(2)空40分。填错不给分。

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)

【参考答案】
(1)n%a==0
(2)str(a)
(3)a+=1或者a=a+1


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)

【参考答案】
(1)random
(2)1,10
(3)s/m


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)

【参考答案】
(1) f(n)
(2) (i+1)**2 或 (i+1)*(i+1)

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)

【参考答案】
(1)n == 1 or n == 2
(2)fib(n-1)
(3)fib(n-2)
评分标准:
1、错1空扣30分


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)

【参考答案】
(1) s == "" 或 len(s)<=1
(2) reverse(s[1:])
评分标准:
1、每空50分


32、(程序填空)下面代码实现比较两数大小并且输出较大的那个,请完成填空

def myMax(a,b):
if __(1)__:
return a
else:
__(2)__ a = eval(input())
b = eval(input()) print(myMax(a,b))

(本题分数:3)

【参考答案】
(1) a>b
(2) return b
评分标准:2个空,一个空50分。表达式不一样,但是完成同样的函数功能,不扣分


33、(程序填空)下面递归函数mul计算输出1到n的连乘结果,请完善空格。

def mul(n):
if n==1:
__(1)__
else:
__(2)__ n = int(input())
print(mul(n))

(本题分数:4)

【参考答案】
(1) return 1
(2) return mul(n-1)*n
评分标准:2个空,一个空50分。表达式不同于参考答案,但是能正确计算出结果,也给满分

华南理工大学 Python第5章课后小测-2的更多相关文章

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

    1.(单选)下列符号中,有()个是Python的关键字.(1)if    (2)lambda  (3)not   (4) For   (5)None(6)from  (7)True   (8)fina ...

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

    1.(单选)"abc"的长度是3,"老师好"的长度是多少?(本题分数:4)A) 1B) 3C) 6D) 9您的答案:B  正确率:100%2.(单选)下面代码的 ...

  3. 华南理工大学 Python第7章课后小测-2

    1.(单选)以下选项中使Python脚本程序转变为可执行程序的第三方库的是(本题分数:3)A) NetworkxB) pyinstallC) RequestsD) PyPDF2您的答案:B  正确率: ...

  4. 华南理工大学 Python第7章课后小测-1

    1.(单选)以下程序对字典进行排序,按字典键值从小到大排序,空白处的代码是(  ): dt={'b':6, 'c':2, 'a':4} s=sorted(dt.items(),key=_____) p ...

  5. 华南理工大学 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 ...

  6. 华南理工大学 Python第4章课后小测-2

    1.(单选)下面程序的输出结果是: for c in "ComputerScience": if c=="S": continue print(c,end=&q ...

  7. 华南理工大学 Python第4章课后小测-1

    1.(单选)下面程序的输出结果是: for c in "ComputerScience": print(c,end="") if c=="S" ...

  8. 华南理工大学 Python第3章课后小测-2

    1.(单选)给出如下代码 s = 'Hello scut' print(s[4::-1]) 上述代码的输出结果是(本题分数:2)A) HelloB) olleHC) scutD) tucs您的答案:B ...

  9. 华南理工大学 Python第3章课后小测-1

    1.(单选)给出如下代码 s = 'Hello scut' print(s[::-1]) 上述代码的输出结果是(本题分数:4)A) HelloB) Hello scutC) olleH tucsD)  ...

  10. 华南理工大学 Python第1章课后小测

    1.(单选)计算机有两个基本特性:功能性和()性.(本题分数:5)A) 可存储B) 可计算C) 可通信D) 可编程您的答案:D  正确率:100%2.(单选)计算机硬件可以直接识别和执行的程序设计语言 ...

随机推荐

  1. React技巧之中断map循环

    正文从这开始~ 总览 在React中,中断map()循环: 在数组上调用slice()方法,来得到数组的一部分. 在部分数组上调用map()方法. 遍历部分数组. export default fun ...

  2. NC14247 Xorto

    NC14247 Xorto 题目 题目描述 给定一个长度为 \(n\) 的整数数组,问有多少对互不重叠的非空区间,使得两个区间内的数的异或和为 \(0\) . 输入描述 第一行一个数 \(n\) 表示 ...

  3. (数据库提权——Redis)Redis未授权访问漏洞总结

    一.介绍 1.Redis数据库 Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key- ...

  4. Spring 核心概念

    Spring 核心概念 引言 本文主要介绍 Spring 源码中使用到的一些核心类 1. BeanDefinition BeanDefinition表示Bean定义,BeanDefinition 中存 ...

  5. Data too long for column 'xxx' at row

    Data too long for column 'xxx' at row 数据库的默认的utff-8,且连接的字符串也设置了utf-8,数据库字段用的text,但是还是报错,原因超出了长度,要最大的 ...

  6. JUC源码学习笔记2——AQS共享和Semaphore,CountDownLatch

    本文主要讲述AQS的共享模式,共享和独占具有类似的套路,所以如果你不清楚AQS的独占的话,可以看我的<JUC源码学习笔记1> 主要参考内容有<Java并发编程的艺术>,< ...

  7. mysql语法使用详细代码版

    mysql 1.什么是数据库 数据库:(DB,DataBase) 作用:用来存储数据,管理数据.Txt,Excel,word是在数据库出现之前存储数据的. 概念:数据仓库,安装在操作系统上的软件. 数 ...

  8. idea引入fastjson的jar包:ClassNotFound

    idea 手动添加fastjson的jar包时,既在项目依赖里添加了,又在WEB-INF下的lib库里添加了 但是启动后就是加载不到,报错:ClassNotFound 尝试了好久,也参考了网上的许多建 ...

  9. NOI / 2.3基本算法之递归变递推-6262:流感传染

    OpenJudge - 6262:流感传染http://noi.openjudge.cn/ch0203/6262/ 6262:流感传染​​​​​​ 总时间限制: 1000ms 内存限制: 65536k ...

  10. 推荐系统-协同过滤在Spark中的实现

    作者:vivo 互联网服务器团队-Tang Shutao 现如今推荐无处不在,例如抖音.淘宝.京东App均能见到推荐系统的身影,其背后涉及许多的技术.本文以经典的协同过滤为切入点,重点介绍了被工业界广 ...