第二章 数组与链表 课时1 数 组 一、基础巩固 1. 有如下Python程序段: a=[4,4,4,9,4,9,6,4,4] s=[0,0,0,0,0,0,0,0,0] for i in range(0,len(a),2): s[a[i]]+=1 print(s[4]) 执行程序段,输出结果的是( ) A.6 B.5 C.4 D.3 2.已知二维数组a=[[1,3,5],[2,4,6],[7,8,9]],执行语句s=a[1][2]+a[2][1]后,变量s的值为( ) A.5 B.11 C.13 D.14 3.有如下Python程序段: b=[11,4,17,19,3,8,19,5] k=0 for i in range(1,len(b)): if b[i]>b[k]: k=i b.pop(k) 程序段执行后,数组b中的元素为( ) A.11,4,17,19,3,8,19,5 B.11,4,17,3,8,19,5 C.11,4,17,19,3,8,5 D.11,4,17,19,3,8,19 4.有如下Python程序段: s=0 a=[[2,8,3],[1,6,4],[5,7,9]] for i in range(3): for j in range(3): if i==j: s=s+a[i][j] 程序段执行后,变量s的值为( ) A.11 B.14 C.17 D.21 5.有如下Python程序段: a=[[i+1 for i in range(4)] for j in range(3)] for i in range(3): for j in range(4): a[i][j]=a[i][j]+4*i 则程序执行后,a[1][2]的值为( ) A.2 B.4 C.7 D.8 6.有如下Python程序段: num=[0]*10 n=36 s=0 for i in range(n): j=9 num[j]+=1 while num[j]==2: num[j]=0 j-=1 num[j]+=1 for i in range(10): s+=num[i] print(s) 执行此代码后,变量s的值为( ) A.2 B.3 C.4 D.5 7.查找素数能够很好地体现出计算机解决某些数学问题的速度优势,除了计算机性能以外,设计更加简单的算法也能够提高计算机解决某些问题的速度。某种素数算法就是通过“开关”的思想,例如求100以内的所有素数,采用数组来表示[1,1,1,……,1,1,1],数组的索引值表示0~99中的每个数,1表示“开”即为素数(先假设都为素数)),从2(0和1不是素数)开始,因为索引2号对应的值为1,则2是素数,再将后面能够被2整除的索引对应的值都改为0,依次类推……以下程序就是采用这种思路编写的输出1000以内的所有素数的程序: lst1=[] # 存放每个数的开关 lst2=[] # 存放找到的素数 lst1=[1]*1000 # 初始化开关列表 for i in range(2,1000): if lst 1[i]==1: lst2.append(i) _____: lst1[j]=0 print(lst2) # 输出所有1000以内的素数 上述程序横线处的合适代码为( ) A.if lst1[j]%i==0 B.if lst1[i]%i==0 C.for j in range(i,1000,i) D.for j in range(i+1,1000,i) 8.某次测试的答题结果存储在asht.txt文件中,该文件每行记录1个考生10道单选题的答案,每题有A,B,C,D四个选项,空白的答案标记为'K'。评分标准:正确得3分,错误得-1分,空白得0分。实现评分的Python程序如下。 ANS='ACBBCDADBC' #ANS 为标准答案 score=[] for line in open('asht.txt','r'): score.append(0) i=len(score)-1 j=0 while j=s[i]>=″a″: ①_____ a[n]+=1 max=0 for i in range(26): if a[i]>max: max=a[i] ②_____ print(chr(ord(″a″)+posi),″times:″,max) 10 ... ...
~~ 您好,已阅读到文档的结尾了 ~~