内容正文:
2023-2024学年高一上学期教科版(2019)必修一2.3 周而复始的循环
一、选择题
1.有如下VB程序段:
For i = 0 To 127
a(i) = 0
Next i
n = 0
For i = 1 To Len(Text1.Text)
c = Mid(Text1.Text,i,1)
a(Asc(c))=a(Asc(c))+1
Next i
For i=0 to 127
If a(i)>1 Then n=n+1
Next i
Label1.Caption = Str(n)
运行时,在文本框 Text1 中输入“AABBC123abc1234”,单击按钮 Command1 后,标签 Label1 中显示的内容是( )。
A.4 B.5 C.6 D.7
2.要计算1到10的和,问号处应该填写( )
S=0
for i in range(?):
S+=i
print(S)
A.0 B.9 C.10 D.11
3.运行如下代码,输出结果是( )
i = 0
while i<10:
print(i,end='')
i = i+1
A.0123456789 B.123456789 C.12345678910 D.012345678
4.下列关于Python循环语句的说法错误的是( )
A.for循环一般用于循环次数已知的情况
B.for循环和while循环不能相互嵌套
C.循环语句的结束条件设置不合理会造成无限循环
D.所有的for循环都可以用while循环改写
5.有下面一段程序:
a = [9,5,2,3,0,-9,5,0,7,-10]
s,i = 0,0
while a[i] != 0 and i < len(a):
s += 1
i += 1
运行该程序后 s 的值为( )
A.4 B.5 C.8 D.10
6.关于循环结构,下列说法中错误的是( )。
A.当循环可能循环体一次都执行不到
B.当循环是先执行循环体再判断
C.循环结构适合用来解决在条件限定下某些步骤需要重复执行的问题
D.不是所有的循环结构都能用For语句来实现的
7.以下程序代码执行结果是( )
for i in range(4):
for j in range(4):
print("*",end="")
print()
**** * **** *
**** ** *** **
**** *** ** ***
A.**** B.**** C.* D.****
8.阅读并理解下面的Python程序代码,程序运行结果是( )
(1) for w in['荷塘月色','背影','匆匆']:
(2) print(w,'是朱自清的代表作!')
(3) print('这些都是我喜欢的作品!')
A. B.
C. D.
9.小明想用数据移位思想将一段长度为n的序列a(n), 以t位置为分界,把前t-1个数和后n-t+1个数调换前后顺序,但保持每段中数据的相对位置不变。例如一段长度为6的序列1、2、3、4、5、6。t=4时,数组a中元素顺序变成4、5、6、1、2、3.实现上述功能的代码如下,下列①、②处填写正确的是( )
t = Val(Text1. Text): m= 2
For i=t-1 To 1 Step-1
k = a(i)
For j=i To n- 1
①
Next j
②
n=n-1
Next i
A.①a(j+1)=a(j)②a(j+1)=k B.①a(j)=a(j+1)②a(j+1)=k
C.①a(j+1)=a(j) ②a(j)=k D.①a(j)=a(j+1) ②a(j)=k
10.在算法执行过程中,用于跳过当前循环并继续执行下一次循环的语句是( )
A.break B.continue C.return D.exit
11.有如下Python函数mydel,功能是在非空列表lst中找第一个数据x并删除,划线处的正确代码为( )
def mydel(lst, x):
for i in range(len(lst)):
if lst[i]==x:
break
else:
return("找不到想删除的数据")
for j in range(① ):
lst[j]=lst[j+1]
lst.pop() #pop()方法的功能是删除列表最后一个数据
A.i, len(lst)-1 B.i, len(lst)-2 C.len(lst)-1, i, -1 D.len(lst)-2, i-1, -1
12.下面的程序代码中c的值为( )
s=range(10)
a=s[3]
b=s[-1]
c=a+b
A.11 B.12 C.13 D.14
13.下列程序的输出结果是( )
count=0
for i in range(100,1000):
if i%10==i//100:
count+=1
print(count)
A.70 B.80 C.90 D.100
14.在Python中运行下列程序,输出结果为( )
for i in range (1,6):
print("*", end="")
A.****** B.***** C.******* D.****
15.运行如下Python程序,结果为( )。
A.1 B.3 C.6 D.18
二、填空题
16.下面的程序段运行后的结果为
s=0
for i in range(1,8,3):
s=s+i
print(s)
17.在循环结构中,用于判断循环是否继续执行的表达式称为 。
18.要判断一个正整数n (n>=3 )是否为素数,一种方法是:统计2到n -1之间所有能整除n的整数个数s,若s等于0,则n是素数,否则就不是素数。为了实现这一算法,编写代码如下,运行程序时出现错误提示,根据错误提示,一种修改方法是:只需修改图中源程序的第2行代码,就可以使程序正常运行,则第2行应修改为:
源程序
运行时错误提示
19.下图为登入某平台的部分算法流程,若密码连续输错3次,则账号将被冻结2小时后方可操作,若密码输入正确则进入平台。要实现此功能,空白处应填入 。
三、操作题
20.小陈在气象部门得到了一份2022年不同城市的月平均日照时数(单位:kW·h/m²/day)数据,存放在Excel文件“日照.x1sx”中。部分界面如图所示。
图a
请回答下列问题:
(1)第1步,小陈编写了如下代码。
import pandas a spd
df=pd.read_excel("日照.xlsx")
mdays=[31,28,31,30,31,30,31,31,30,31,30,31]
months=list (df. columns)
for i in df. index:
s=0
for j in range(12) :
m=df. at[i, months[j+1] ]
s += m * m days[j]
df.at[i, “年度平均”] =round(s/365,2)
该程序实现的功能是 。
(2)第2步,仅考虑平均日照时数因素,选出最适合用光伏发电给智能农业大棚提供能源的十个城市。划线处应填入的代码为 (单选,填字母)。
A.df. sort_values ("城市名",ascending=False) .head (10)
B.df. sort_values ("城市名").tail (10)
C. df. sort_values ("城市平均",ascending=False) [:10]
D.df. sort_values ("城市平均",ascending=False) .tail(10)
df=
# 输出结果如图b所示,代码略
年度平均最高的10个城市为:
日喀则地区5.83
阿里地区5.66
三沙市5.57
山南地区5.53
拉萨市5.53
那曲地区5.11
昌都地区4.91
海西蒙古族藏族自治州4.88
和田地区4.84
攀枝花市4.83
图b
(3)小陈想在家乡温州建一个智能大棚,采用光伏发电加蓄电设备供电,面积为1平方米的光伏板容量约为0.3kW/块,光伏的充放电效率为80%,大棚每天消耗的最低电能约为30k·Wh,为确保每月能正常供电,需要1平方米的光伏发电板共① 块。
(日均发电量=电池板的容量/块×块数×平均日照时数×充放电效率)
建设光伏发电设备前要先获得当地的平均日照时数情况,小陈通过如下代码获取相关数据。程序运行界面如图c所示。浙考神墙750
温州市月平均日照最小值为2.42
图c
res=df [df ["城市名"=="温州市^]
res=res.values[0] [1:13]. ②
print("温州市月平均日照最小值为", res)
四、简答题
21.说明在 Python 中如何实现一个简单的循环结构。
22.请简述什么是编程中的循环,并说明循环的基本类型。
23.解释什么是编程中的循环控制语句,并给出一个常见的例子。
试卷第1页,共3页
试卷第1页,共3页
学科网(北京)股份有限公司
参考答案:
1.B
2.D
3.A
4.B
5.A
6.B
7.A
8.D
9.D
10.B
11.A
12.B
13.C
14.B
15.C
16.12
17.循环条件
18.n=int(input())
19.i=0
20. 计算每个城市的年度平均日照时数。 C 52或同等计算表达式 min()
21.Python语言用于实现循环结构的语句有for语句和while语句,具体格式如下:
for 变量 in 列表:
循环体
或
while 条件:
循环体
22.循环是编程中重复执行一段代码直到满足特定条件的控制结构。循环的基本类型包括:for循环(迭代已知次数的元素序列)、while循环(只要条件为真就迭代)和do-while循环(至少执行一次,然后只要条件为真就继续迭代)。
23.循环控制语句是编程中用来控制循环结构的语句,例如在循环中提前退出或跳过某些迭代。一个常见的例子是break语句,它可以用来立即退出循环。
答案第1页,共2页
答案第1页,共2页
学科网(北京)股份有限公司
$$