python函数的作用降低编程复杂度_Python语言程序设计 (第11期) 测验5: 函数和代码复用...

共10道单选题和2道编程题,限答1次、限时50分钟

选择题

1.以下选项不是函数作用的是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬ (D)

A.用代码

B.强代码可读性

C.降低编程复杂度

D.提高代码执行速度度

2.下列程序的输出结果为:(A)

def f(a,b):

a=4

return a+b

def main():

a=5

b=6

print(f(a,b),a+b)

main()

A.10 11

B.10 10

C.11 10

D.11 11

正确答案 A

这里没有全局变量,都是函数局部变量的运算

3.以下关于Python函数说法错误的是:(B)

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

c的值应该为210

4.以下关于函数调用描述正确的是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬ (B)

A.函数和调用只能发生在同一个文件中

B.自定义函数调用前必须定义

C.Python内置函数调用前需要引用相应的库

D.函数在调用前不需要定义,拿来即用就好

正确答案 B

函数调用前必须已经存在函数定义,否则无法执行。

Python内置函数直接使用,不需要引用任何模块。

5.以下关于模块化设计描述错误的是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬ (A)

A.应尽可能合理划分功能块,功能块内部耦合度低

B.高耦合度的特点是复用较为困难

C.模块间关系尽可能简单,模块之间耦合度低

D.应尽可能合理划分功能块,功能块内部耦合度高

6.以下对递归描述错误的是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬ (D)

A.写简单

B.定要有基例

C.递归程序都可以有非递归编写方法

D.执行效率高

正确答案 D

递归不提高程序执行效率。

任何递归程序都可以通过堆栈或队列变成非递归程序(这是程序的高级应用)。

数大一点,递归是真的慢。

7.以下关于函数说法错误的是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬ (C )

A.函数可以看做是一段具有名字的子程序

B.函数是一段具有特定功能的、可重用的语句组

C.对函数的使用必须了解其内部实现原理

D.函数通过函数名来调用

正确答案 C

调用函数不需要知道函数内部实现原理,只需要知道调用方法(即接口)即可。

8.哪个选项对于函数的定义是错误的?‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬ (C )

A.def vfunc(a,b=2):

B.def vfunc(a,*b):

*C.def vfunc(a,b):

D.def vfunc(a,b):

正确答案 C

def vfunc(*a, b) 是错误的定义:*a表示可变参数,可变参数只能放在函数参数的最后。

9.关于return语句,以下选项描述正确的是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬ (D)

A.函数中最多只有一个return语句

B.函数必须有一个return语句

C.return只能返回一个值

D.函数可以没有return语句

正确答案 D

函数可以包含0个或多个return语句

python里return可以返回多个值

10.以下关于递归函数基例的说法错误的是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬ (C )

A.递归函数的基例不再进行递归

B.递归函数必须有基例

加粗样式C.每个递归函数都只能有一个基例

D.递归函数的基例决定递归的深度

正确答案 C

每个递归函数至少存在一个基例,但可能存在多个基例。

程序设计题

1.随机密码生成

描述

补充编程模板中代码,完成如下功能:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬

以整数17为随机数种子,获取用户输入整数N为长度,产生3个长度为N位的密码,密码的每位是一个数字。每个密码单独一行输出。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬

产生密码采用random.randint()函数。

输入

输出

3

634

524

926import random

def genpwd(length):

a=random.randint(pow(10,length-1),pow(10,length))#产生[100,1000)区间的整数

return a

length = eval(input())

random.seed(17)

for i in range(3):

print(genpwd(length))

2.连续质数计算

描述

补充编程模板中代码,完成如下功能:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬

获得用户输入数字N,计算并输出从N开始的5个质数,单行输出,质数间用逗号,分割。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬

注意:需要考虑用户输入的数字N可能是浮点数,应对输入取整数;最后一个输出后不用逗号。

输入

输出

12

13,17,19,23,29def prime(m):

for i in range(2,m):

if m % i == 0:

return False

return True

n = eval(input())

n_ = int(n)

n_ = n_+1 if n_ < n else n_ #舍去小数部分与原来进行比较

count = 5

while count > 0:

if prime(n_):

if count > 1:

print(n_, end=",")

else:

print(n_, end="")

count -= 1

n_ += 1

这一章讲到了递归,我还有一份C语言的递归练习 ㄟ( ▔, ▔ )ㄏ

点击练习

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/394314.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

restful解决什么问题_当您陷入RESTful,WordPress和一个困难的地方时,如何解决CMS问题...

restful解决什么问题by Jessica Duffin Wolfe杰西卡达芬沃尔夫(Jessica Duffin Wolfe) 当您陷入RESTful&#xff0c;WordPress和一个困难的地方时&#xff0c;如何解决CMS问题 (How to solve a CMS problem when you’re caught between RESTful, WordPress, and a hard place…

InfluxDB的HTTP API写入操作

一、说明 为了方便&#xff0c;本文主要使用curl来发起http请求&#xff0c;示例当中也是使用curl这个工具来模拟HTTP 请求。 在实际使用中&#xff0c;可以将请求写入代码中&#xff0c;通过其他编程语言来模拟HTTP请求。 二、InfluxDB通过HTTP API操作数据库 1&#xff09;建…

揭开勒索软件的真面目

一、前言 2013年9月&#xff0c;戴尔公司的SecureWorks威胁应对部门&#xff08;CTU&#xff09;发现了一种名为“CryptoLocker”的勒索软件&#xff0c;它以邮件附件形式分发&#xff0c;感染计算机并加密近百种格式文件&#xff08;包括电子表格、数据库、图片等&#xff09;…

leetcode486. 预测赢家(动态规划)

给定一个表示分数的非负整数数组。 玩家1从数组任意一端拿取一个分数&#xff0c;随后玩家2继续从剩余数组任意一端拿取分数&#xff0c;然后玩家1拿&#xff0c;……。每次一个玩家只能拿取一个分数&#xff0c;分数被拿取之后不再可取。直到没有剩余分数可取时游戏结束。最终…

w550官方例程_急!求索爱w550的刷机所需要的所有文件! 全部分送上!

展开全部W550c行货软件升级使用国内行货W550c手机的朋友&#xff0c;将来是可以在62616964757a686964616fe58685e5aeb931333238646330官方网站使用随机数据线免费升级的&#xff0c;目前W550c的最新版本是R4AB048但是由于目前官方网站还未提供&#xff0c;大家敬请期待。W550c索…

python的xpath用法介绍_python爬虫之xpath的基本使用详解

本篇文章主要介绍了python爬虫之xpath的基本使用详解&#xff0c;现在分享给大家&#xff0c;也给大家做个参考。一起过来看看吧一、简介XPath 是一门在 XML 文档中查找信息的语言。XPath 可用来在 XML 文档中对元素和属性进行遍历。XPath 是 W3C XSLT 标准的主要元素&#xff…

杨波 微服务技术专家_专家称,这些是最有效的微服务测试策略

杨波 微服务技术专家by Jake Lumetta杰克卢米塔(Jake Lumetta) 专家称&#xff0c;这些是最有效的微服务测试策略 (These are the most effective microservice testing strategies, according to the experts) Testing microservices is hard. More specifically, end-to-end…

LRU算法实现

LRU是Last Recent Used 缩写&#xff0c;做为一种缓存算法&#xff0c;将最近较少使用的缓存失效。memcache采用了该算法。如下采用了一种PHP的实现方式。该算法将每次新增的内容&#xff0c;放到缓存顶部&#xff0c;达到缓存极限时&#xff0c;将缓存底部的内容清除。可以通过…

Java中的阻塞队列-LinkedBlockingQueue(二)

原文地址&#xff1a;http://benjaminwhx.com/2018/05/11/%E3%80%90%E7%BB%86%E8%B0%88Java%E5%B9%B6%E5%8F%91%E3%80%91%E8%B0%88%E8%B0%88LinkedBlockingQueue/ 在集合框架里&#xff0c;想必大家都用过ArrayList和LinkedList&#xff0c;也经常在面试中问到他们之间的区别。…

自动加密企业关键业务数据 赛门铁克推出全新信息保护解决方案

最新推出的Symantec Information Centric Security解决方案&#xff0c;能够帮助企业随时随地对数据进行自动加密、跟踪和撤销&#xff0c;提供卓越的可见性和管控力 近日&#xff0c;全球网络安全领域的领导者赛门铁克公司宣布推出一款全新的高级信息保护工具 Symantec Inform…

leetcode312. 戳气球(动态规划)

有 n 个气球&#xff0c;编号为0 到 n-1&#xff0c;每个气球上都标有一个数字&#xff0c;这些数字存在数组 nums 中。 现在要求你戳破所有的气球。如果你戳破气球 i &#xff0c;就可以获得 nums[left] * nums[i] * nums[right] 个硬币。 这里的 left 和 right 代表和 i 相邻…

碳钢腐蚀速率计算公式_镁合金轮毂螺栓连接的电偶腐蚀行为

环境污染和能源短缺促使日益发达的汽车工业大力推进构件轻量化&#xff0c;镁合金是最轻的结构材料之一&#xff0c;构件采用镁合金制造可以在减重的同时不降低结构强度&#xff0c;受到汽车工业的青睐。轮毂作为汽车的主要组成部件&#xff0c;其轻量化是汽车节能减排的有效途…

第七周总结

2019第七周作业 本周作业头 这个作业属于那个课程C语言程序设计II这个作业要求在哪里https://edu.cnblogs.com/campus/zswxy/computer-scienceclass1-2018/homework/2939我在这个课程的目标是理解指针数组和地址之前的关系及应用这个作业在那个具体方面帮助我实现目标practice参…

python大纲图_Python课程大纲

课程大纲被分成6个部分&#xff0c;每个部分又被分解为多个阶段&#xff0c; 而每个阶段包含了多个Try, Workshop, FactToFace, Apply. 这里只列出部分&#xff0c;和阶段&#xff1a;CHAPTER 0 : 预科[可选]Linux使用&#xff0c;常用CMD&#xff0c;服务配置&#xff0c;IDE&…

如何使用Google Authenticator在ASP.NET Core中设置两因素身份验证

介绍 (Introduction) In this article, we are going to learn how to perform two-factor authentication in an ASP.NET Core application using the Google Authenticator app.在本文中&#xff0c;我们将学习如何使用Google Authenticator应用程序在ASP.NET Core应用程序中…

280. Wiggle Sort

最后更新 二刷 这个题做得真蠢。上来想的复杂了&#xff0c;想的是quick sort之类的&#xff0c;然后一个一个交换。 实际上直接交换就行。。没啥特别的。 回头看一刷也是同样的思考过程 宿命论啊。。 Time: O(n) Space: O(1) public class Solution {public void wiggleSort(i…

避免人为灾难:盘点数据中心里十大愚蠢行为

对于企业运营&#xff0c;数据中心从设计、部署等各个环节都有极其严格的规范&#xff0c;保证简单的“题目”不出错也需要企业IT管理人员的智慧&#xff0c;在数据中心任何一个小错误往往会带来巨大灾难。数据中心从设计、部署、测试、运行、运维等各个环节都不能有任何的疏忽…

python中node.tag的用法_python在ui自动化中的一些常见用法

http://cn.python-requests.org/zh_CN/latest 可以查看requests库的说明&#xff0c;pprint(res.json(),width30)可以对请求的返回值按照json格式化形式进行打印。常见的content-type 有application/x-www-form-urlencoded、application/json、application/xml。自动化测试操作…

leetcode1039. 多边形三角剖分的最低得分(动态规划)

给定 N&#xff0c;想象一个凸 N 边多边形&#xff0c;其顶点按顺时针顺序依次标记为 A[0], A[i], …, A[N-1]。 假设您将多边形剖分为 N-2 个三角形。对于每个三角形&#xff0c;该三角形的值是顶点标记的乘积&#xff0c;三角剖分的分数是进行三角剖分后所有 N-2 个三角形的…

TRIZ解决问题方法

个人觉的成功是有规律的&#xff0c;那些成功的人士&#xff0c;都有一套处理事情的秘籍。只要我们的思维方式把那些秘籍融会贯通&#xff0c;并快速执行&#xff0c;我们有一天也会成功的。 TRIZ解决问题的5点方法。 1.确定最终目标。 2.列出阻碍因素 3.消除阻碍因素 4.可以利…