所谓“同选”是指学生在3门课的选择中最喜欢一起选的两门课,比如A同学选了124,B同学选
了 134,则同选最多的两门课为 14。请回答以下问题:
(1)该程序先将文本文件的选课数据读取并保存到列表 xk 中,文本文件及读取到列表后部分数据如图所示,则该列表数据项的数据结构是


(2)程序运行结果如图所示,补充完整划线处的代码

course=["排球","篮球","足球","羽毛球","乒乓球","网球","健身操”,“游泳”,"太极”]
xk=[] #存储选课信息,用数字1~9表示9门课程
f=[0]*9 #存储9门课程的选课人数
d=[0]*100 #存储两门课程同选的次数,如d[26]=50表示篮球和网球被 50个同学同选
def relation(y): #计算列表y中各数据项的同选次数
for i in range(1,10):
for j in range(i+1,10):
if str(i) in y and str(i) in y: #课程i,j均在列表y中出现
d[10*i+j]+=1 #第i和第j门课程同选次数加1存储在列表d中
file=open("xk.txt","r") #打开文件
line=file.readline()
while line:
line=line.split() #以空格切开,得到的结果是字符串元素,再组合成列表数据样式详见第(1)小题图所示xk.append(line)
line=file.readline()
file.close()
for y in xk: #对列表xk中的各数据项进行处理
relation(y) #调用定义函数统计y中各门课程同选次数,存储到列表d中
for x in y: #遍历数据项y中的元素,统计每门课程的选课人数
for i in range(9):
print(course[1),"选课人数: " ,
maxd=max(d)
print(“同选最多的两门课程是:")
for k in range(100):
if d[k]==maxd:
print(course[k // 10 -1],

同类型试题

y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2


y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2

