第三章 算法的程序实现 单元练习 浙教版(2019) 必修1 数据与计算
展开第三章 算法的程序实现 单元练习
一、选择题
1.在Python中,下列能判断变量N是偶数的条件表达式是( )
A.N%2=0 B.N//2=0 C.N%2==0 D.N//2==0
2.现有一段代码如下,现输入“260”和“-123”,运行后输出结果分别是( )
x=input("请输入数据")
if x[0] =="-":
fz=-int(x[:0:-1])
else:
fz=int(x[: :-1])
print(fz)
A.062 -32 B.062 -321 C.62 -32 D.62 -321
3.有如下Python程序段:
import random
d=[0]*6
i=0
while i<=5:
d[i]=random.randint(1,10)
if d[i]%2==i%2:
continue
i=i+1
print(d)
该程序执行后,下列输出的结果不正确的是( )
A.[5, 8, 9, 8, 9, 2] B.[8, 1, 8, 7, 2, 5]
C.[9, 6, 7, 2, 9, 4] D.[3, 8, 7, 6, 5, 4]
4.下面的Python程序段运行后的输出结果是( )
x=24
if x%2=1:
print(x,"是奇数。")
else:
print(x,"是偶数。")
A.24是奇数。 B.x是偶数。 C.x是奇数。 D.24是偶数。
5.小曲正在编写游戏用户管理的程序,下面是其中一个程序段,程序运行后输出结果为( )
1 user={‘name’:‘高明’,‘age’:18}
2 user[‘job’]=‘teacher’
3 user[‘age’]=24
4 print(user)
A.{‘name’:‘高明’,‘age’:18,‘job’:‘teacher’}
B.{‘name’:‘高明’,‘age’:24}
C.{‘name’:‘高明’,‘age’:24,‘job’:‘teacher’}
D.程序运行会出错
6.在Python中,以下赋值语句格式不正确的是( )
A.x,y=y,z B.x,y=1,2 C.x=y=30 D.x+y=z
二、填空题
7.根据下面的while语句的运算,计算结果是______。
8.赋值语句 a,b=b,a 的含义是______________。 赋值语句c+=a 等效于_______________。a,b,c=1,2,3的含义是________________。a=b=c=1 的含义是_________________。
9.x3+改写成Python表达式__________。
10.下列程序,运行结果为( )
import math
x=16
if x<0:
y=abs(x)
else:
y=math.sqrt(x)
print(y)
三、判断题
11.在 Python 程序设计语言中,表达式 17﹪2 的值为 1。( )
12.Python语言用if语句实现选择结构,它包括以下三种基本形式:单分支语句、双分支语句、多分支语句。( )
13.计算机解决问题的过程分为四步:设计算法、分析问题、编写程序、调试与维护。( )
14.用计算机解决生活中实际问题的方法有多种,编制计算机程序解决问题正确的顺序是:分析问题→编写代码→设计算法→调试运行。( )
15.机器语言和汇编语言都属于低级语言。( )
四、操作题
16.小明对入栈、出栈规则研究发现, 若有 n 个数字 1,2,3,……,n 按由小到大的顺 序入栈,则出栈序列必须遵循下述原则: 当数字 x 出栈后,则在x后出栈的小于x 的 所有数字必定以降序排列,比x大的数字可以夹杂在该降序序列中。现编写 Python 程 序,按上述原则验证一个随机产生的出栈序列是否可能, 程序运行界面如图所示。
(1) 根据题意,若有 7 个数字入栈, 则出栈序列“3→2→5→4→7→1→6”是______ (单选,填字母: A.可能 / B.不可能)
(2) 实现上述功能的Python程序代码如下,程序中加框处代码有错,请改正_________。
(3)请在划线①②处填入合适代码__________、________。
import random
n=int(input('请输入入栈元素的个数:'))
data=[i+1 for i in range(n)]
random.shuffle(data) #将序列的所有元素随机排序
s=” ”
for i in range(n):
print('随机产生的出栈序列为: '+s[1:])
flag=True;i=0
while i<n-1 and flag:
①
for j in range(i+1,n):
if data[j]<data[i]:
if data[j]<x:
x=data[j]
else:
②#去除最后多余的'→'
break
i+=1
if flag:
print('该出栈序列是可能的!')
else:
print('该出栈序列是不可能的! ')
五、简答题
17.编写一个程序,从键盘上输入3个数,计算这三个数的和,并输出结果。
18.列举Python程序设计语言中,IF 语句的三种常见格式。
参考答案:
1.C
2.D
3.B
4.D
5.C
6.D
7.120
8. 交换a和b的值 c=c+a a=1,b=2,c=3 a、b、c的值均为1
9.x**3+3*a*b/(6-y)或 x**3+(3*a*b)/(6-y)
10.4.0
11.正确
12.正确
13.错误
14.错误
15.正确
16. B s+=’ →’+str(data[i]) x=data[i] flag=False
17.a = input ( )
b= input( )
c = input( )
d=int(a)+int(b)+int(c)
print (d)
18.单分支语句格式:
If(条件表达式):
语句A
双分支if语句格式:
If(条件表达式):
语句A
else:
语句B
if...elif...else语句格式:
If(条件表达式):
语句1
elif:
语句2
...
elif:
语句N
else:
语句N+1