有下面一段程序,其功能是可输入多个成绩(不知道是多少个,只要输入的分数是0则停止输入),然后计算出平均分。
s=0
i=1
m=input("第"+str(i)+"个成绩: ")
m=float(m)
while m>0:
s=s+m
i=i+1
m=input("第"+str(i)+"个成绩: ")
m=float(m)
print("平均成绩:",s/(i-1))
但是,以上程序有瑕疵,不能过滤不合格的分数(正常的分数应该是在0-100之间)。请你对这段程序进行修改完善,具体要求:还是可以输入任意多个成绩,当分数为0则停止并计算出前面那些分数的平均分;如果在输入的成绩中如果分数有不合法的(小于0或者大于100)则自动过滤,不报错,不退出程序,但是在算平均分的时候也不把这些不合理的分数算进去。