需求:
输入一系列成绩,每次输入一个成绩之后都询问是否还要继续输入y/n,输入n后可以计算这些成绩的平均值,并且统计优良中及格、不及格的人数优>=90良>=80中>=70及格>=60不及格<60
代码:
# num :有效成绩数量 # ave_score : 平均成绩 # all_score : 总成绩 # score : 输入的单个成绩 # grade : 优良等级 num = 0 all_score = 0 grade = '' num1 = 0 # 不及格人数 num2 = 0 # 及格人数 num3 = 0 # 得 '中'人数 num4 = 0 # 得 '良'人数 num5 = 0 # 得 '优'人数 while True: score = int(input('请输入成绩:')) if score < 0 or score > 100: score = int(input('输入有误!成绩在0~100之间。请重新输入:')) all_score = all_score + score num += 1 if score < 60: grade = '不及格' num1 += 1 elif score < 70: grade = '及格' num2 += 1 elif score < 80: grade = '中' num3 += 1 elif score < 90: grade = '良' num4 += 1 else: num5 += 1 grade = '优' i = input('是否继续输入(y 表示继续,n 表示不继续):') if i == 'n': average_score = all_score / num break if i == 'y': pass else: i = input('输入错误!是否继续输入(y 表示继续,n 表示不继续):') print('*'*20) print("平均成绩是", average_score) print('有效成绩数', num) print("不及格人数", num1) print("及格人数", num2) print("得 '中'人数", num3) print("得 '良'人数", num4) print("得 '优'人数", num5)