浙教版(2020)初中信息技术八年级上册第二单元第10课 循环结构——while循环 同步练习

浙教版(2020)初中信息技术八年级上册第二单元第10课 循环结构——while循环 同步练习
教材版本:信息技术
试卷分类:信息技术八年级上学期
试卷大小:1.0 MB
文件类型:.doc 或 .pdf 或 .zip
发布时间:2024-05-01
授权方式:免费下载
下载地址:点此下载

以下为试卷部分试题预览


1. 填空题
Python语言用于实现循环结构的语句有语句和while语句。
2. 单选题
某Python程序代码如下:

s='t1Hr2a3'

s1='' ; s2=''; i = 0

while i < len(s):

  if '0'<=s[i]<='9': 

    s1 = s1 + s[i] 

  elif 'a'<=s[i]<='z':

    s2 = s[i] + s2 

    i = i + 1

    ans = s2 + s1

print(ans)

程序执行后,输出的结果是(      )

A . 12art3 B . tra123 C . rta123 D . art321
3. 单选题
如下Python程序段

x = 0

while x < 50:

    x = (x + 2) * (x + 3)

运行后,x的值为(    )

A . 0 B . 72 C . 50 D . 168
4. 单选题
在一次比赛中,需要随机给10名选手各编一个0~9范围内的唯一序号,对应的Python程序段如下:

        

a,b=[0]*10,[False]*10

i=0

while i<=9:

       

if not b[r]:

a[i]=r

          

i=i+1

print(a)

则划线处的代码依次是(      )

① r=random.randint(0,10)

② b[r]=True

③import random

④ b[i]=True

⑤from random import randint

⑥ r=random.randint(0,9)

A . ⑤①② B . ⑤⑥④ C . ③①④ D . ③⑥②
5. 单选题
执行下列Python程序段后,变量n的值是(    )

n=0

for i in range(1,4):

  n+=i

A . 4 B . 3 C . 6 D . 1
6. 解答题
列举Python程序设计语言中,for循环和while循环的基本的格式。
7. 综合题
编写Python程序,实现以下功能:输入两个正整数a,b,输出他们的最小公倍数。求最小公倍数的做法为:先算出数a和数b的最大公约数k,那么最小公倍数就为数a乘数b再除以数k。而求最大公约数的方法一般为辗转相除法。它的具体做法是:用较大数除以较小数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是e为止。如果是求两个数的最大公约数,那么最后的除数就是这两个数的最大公约数。示例:123456和7890的最大公因数是6,这可由下列步骤(其中,“a % b”是指取a÷b的余数)看出:

a

b

a % b

123456

7890

5106

7890

5106

2784

5106

2784

2322

2784

2322

462

2322

462

12

462

12

6

12

6

0

程序如下:

a = int(input("输入第一个数:"))

b= int(input("输入第二个数:"))

c=   ①  

while   ②  

print("它们的最小公倍数是:",c//a)

  1. (1) 在划线处填入合适的代码
  2. (2) 如果输入的数分别为:27和15,则加框处语句共执行了次。
8. 综合题
现今信息化时代,信息的传输十分迅速,足不出户便知天下事。许多社交平台都有设置本平台的热点排行榜,方便用户了解正在发生的热门事件。但社交平台数量众多,平台用户种类和数量也大不相同,导致不同平台热点的实际热度大小也不同。小钟为了确保自己知道的热点是真正的热点,于是打算用功能强大的python把各个平台的热点排行榜进行合并,形成自己的热点排行榜。

为了热点之间比较方便,小钟设置了一个热度值来衡量一个热点的热度大小,热度值越大说明这个热点的热度越高。现在小钟已经获得了如下两个平台的热度值从小到大的排行榜,正当他打算将之合并为一个从小到大的排行榜时,却被老师叫走了。于是他决定把这个小功能交给他的好朋友——你来实现,你想到2种算法,请把下列程序填写完整。

A

P10

P9

P8

P7

P6

P5

P4

P3

P2

P1

11

66

116

329

438

582

652

714

756

925

B

E10

E9

E8

E7

E6

E5

E4

E3

E2

E1

35

116

215

271

309

428

576

772

806

950

Python程序如下:

A= [11,66,116,329,438,582,652,714,756,925]

B = [35,116,215,271,①,428,576,772,806,950]

算法一:

myRank =

i = 0

j = 0

while (i < len(A) and j < len(B)):

  if (A[i] < B[j]):

    ②

    i += 1

  else:

    myRank.append(B[j])

    j += 1

while (i < len(A)):

  myRank.append(A[i])

  i += 1

else:

  while (③):

    myRank.append(B[j])

    j += 1

print(myRank)

算法二:

myRank = [0]*(len(A)+len(B))

i = 0

j = 0

k = 0

while (④):

  k = i+j

  if (i >= len(A)):

    myRank[k] = B[j]

    j += 1

  elif (j >= len(B)):

    myRank[k] = A[i]

    i += 1

  elif (⑤):

    myRank[k] = A[i]

    i += 1

  else:

    myRank[k] = B[j]

    j += 1

print(myRank)

9. 综合题
阅读程序。观察使用随机数求解百钱白鸡问题的代码并回答问题。

百千白鸡问题是经典的数学问题,原题为“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,则翁、母、雏各几何?”翻译过来,意思是公鸡一个五块钱,母鸡一个三块钱,小鸡三个一块钱,现在要用一百块钱买一百只鸡,问公鸡、母鸡、小鸡各多少只?

import random

while True:

  x=random.randrange(0,20)

  y=random.randrange(0,33)

  z=random.randrange(0,100)

  if 5*x+3*y+z/3==100 and x+y+z==100:

    print('公鸡',x)

  print('母鸡',y)

print('小鸡',z)

  1. (1) Python中导入库文件的命令是
  2. (2) random.randrange(0,20)生成的随机数的范围是
  3. (3) 如果不想写类似random.randrange(0,20)这么长的句子,可以修改程序中的第一行为
  4. (4) while True的作用是 。
  5. (5) 如果while True造成程序无法停止,我们可以在程序中添加一行
10. 综合题
阅读程序。分析以下两段Python程序并回答问题。

#程序1

i=1

while i<101:

   print('把这句话打印100遍')

i+=1

#程序2

i=100

while i:

    print('把这句话打印100遍')

i=i-2

  1. (1) 在程序1中,i+=1这句话的含义是
  2. (2) 在程序1中,‘把这句话打印100遍 ’实际输出了遍。
  3. (3) 在程序2中,i的初值是
  4. (4) 在程序2中,‘把这句话打印100遍 ’实际输出了遍。
  5. (5) 在程序2中,while i 的含义是
初中信息技术 试卷推荐