第三章 算法的程序实现 单元练习(含答案)

文档属性

名称 第三章 算法的程序实现 单元练习(含答案)
格式 doc
文件大小 58.8KB
资源类型 教案
版本资源 浙教版(2019)
科目 信息技术(信息科技)
更新时间 2022-02-15 21:49:45

图片预览

文档简介

第三章 算法的程序实现 单元练习
一、选择题
1.Python程序运行时,从键盘输入的内容默认是( )数据类型
A.字符串 B.整数 C.浮点数 D.都不是
2.有下列Python程序段:
import random
s=input("请输入字符串:")
x=random.randint(3,6)
n=len(s)
if len(s[0:x])r=s[x:n]+s[0:x]
else:
r=s[0:x]+s[x:n]
print(r)
执行该程序段,若输入“helloworld”(不包含双引号),则输出的结果不可能的是( )
A.loworldhel B.oworldhell C.helloworld D.worldhello
3.下面程序的运行结果是(  )。
>>> list1=[a,3,b,10]
>>> del list1[1:3]
>>> print(list1)
A.[3, 10] B.[a, 10] C.[b, 10] D.[10]
4.x是整型变量,下列选项中,与表达式not x<=1 and not x>6等价的是( )
①not(x<=1 and x>6) ②not(x<=1 or x>6)
③x>1 and x<=6 ④x>1 or x<=6
A.①③ B.①④ C.②③ D.②④
5.下列Python赋值语句正确的是( )
A.x+y=20 B.3x=y C.y=x+20 D.s=2π*r*r
6.Python程序中以下变量名正确的是( )
A.a* B.age C.#b D.print
7.整型变量x存放了一个两位数,以下Python表达式中能正确求出x的数字之和的是(  )。
A.(x%10)+x//10 B.(x%10)//10+x//10
C.(x/10)%10+x//10 D.(x%10)+x/10
8.执行Python语句s=11//3+11%3后,变量s的值是( )
A.3 B.4 C.5 D.6
二、判断题
9.王军同学编写程序解决“韩信点兵”问题后,总结出计算机解决问题的过程分为分析问题-设计算法-编写程序-调试运行程序等步骤。 (_____)
10.用高级语言编写的程序能直接被计算机识别和执行 (______)
11.下列程序段中,赋值语句s=s+i被重复执行了4次。
s=0
For i in range(3,10,2):
s=s+i (_____)
12.def块中的代码不是主程序的一部分,会跳过该段代码.(____)
13.用自然语言来描述算法,比用流程图来描述算法更清晰、简洁。(_______)
14.在运行程序时,先执行主程序再调用函数。(____)
三、填空题
15.程序分析题:算法设计与程序实现(每空4分,共8分)
已知a、b、c分别为三角形的三条边长,利用海伦公式求三角形面积 ,其中编程实现:输入边长a,b, c,如果能构成三角形,输出面积,否则输出“No Answer !”
def cal():
a=int(txtl.get())
b=int(txt2.get())
c=int(txt3.get())
if: :
p= (atb+c)/2
s=math. sqrt (p*(p-a)*(p-b)*(p-c))
txt4.insert (0,str(s))
else:
txt4.insert (0."No Answer!")
(1)利用海伦公式求三角形面积的算法是___________(填写:解析法/查找法/穷举法/排序法)。
(2)填写出参考程序中空白处的表达式____________(填写字母: A/B/C/D)。
A.a+b>c or a+c>b and b+c>a B.a+b>c or a+c>b or b+c>a
C.a+b>c and a+c>b or b+c>a D.a+b>c and a+c>b and b+c>a
16.分析完善程序
以下是计算s=1*2*3*……10的程序代码,请补全程序。
s=①
for i in range(1,11):
s=②
Print (s)
请补充完成上述程序:①____________②________________
17.写出如下运算符的功能:
①**_______②//_______③% _______
18.阅读下列程序,写出运行结果。
def fib(m): n1=1 n2=1 for i in range(3,m +1): t = nl + n2 n1 = n2 n2 = t return t Print(fib(5))
运行结果是:_______________
19.执行下列程序后,从键盘输入1、2,则输出的结果是___________。
m=int(input(“请输入一个数;”))
n=int(input(“请输入一个数;”))
m*=n
n//=m
m//=n
print(m,n)
20.导入模块需要使用________语句。
四、简答题
21.列举Python程序设计语言中,IF 语句的三种常见格式。
22.read、readline和readlines之间的区别?
五、操作题
23.输入三条边长,若能构成三角形,则利用海伦公式计算该三角形的面积。海伦公式为:,式中a,b,c分别为三角形的三边长,p为周长的一半,s为三角形的面积。实现上述功能的Python程序代码如下,请在程序划线处填入合适的代码。
a=eval(input("a="))
b=eval(input("b="))
c=eval(input("c="))
if _______① :
print("周长为", a+b+c)
p=(a+b+c)/2
s=_______②
print("面积为",s)
else:
print("不能构成三角形")
参考答案
1.A
2.D
3.B
4.C
5.C
6.B
7.A
8.C
9.对
10.错误
11.正确
12.对
13.错
14.正确
15.解析法 D
16.1 s*i或i*s
17.幂 整除 取模(取余也对)
18.5
19.2,1
20.import
21.单分支语句格式:
If(条件表达式):
语句A
双分支if语句格式:
If(条件表达式):
语句A
else:
语句B
if...elif...else语句格式:
If(条件表达式):
语句1
elif:
语句2
...
elif:
语句N
else:
语句N+1
22.read 读取整个文件;readline 读取下一行,使用生成器方法;readlines 读取整个文件到一个迭代器以供我们遍历。
23.① a+b>c and a+c>b and b+c>a ② (p*(p-a)*(p-b)*(p-c))**0.5