7-10 jmu-python-异常-学生成绩处理基本版 (15 分)
小明在帮老师处理数据,这些数据的第一行是n,代表有n行整数成绩需要统计。
数据没有错误,则计算平均值(保留2位小数)并输出。
数据有错误,直接停止处理,并且不进行计算。
注:该程序可以适当处理小错误,比如对于有些数据如果左右包含空格,先去掉
空格再行处理。
输入格式:
第一行为n,代表接下来输入的行数。
然后输入n行成绩(整数)。
输出格式:
如果输入过程中均未出现异常,则输出All OK
。 否则输出样例2、3所示格式的错误信息。
输出:avg grade = 平均值
。平均值(保留2位小数) 最后一行:不管输入过程中有无出现异常,都要输出Process Completed
输入样例1:
3
1
2
3
输出样例1:
All OK
avg grade = 2.00
Process Completed
输入样例2:
3
a b
输出样例2:
Error for data " a b"! Break
Process Completed
输入样例3:
3
1
a
输出样例3:
Error for data "a"! Break
Process Completed
s=int(input()) sum=0 count=0 c=0 for i in range(s): a=input("") b=a.strip() flag=0 for j in b: if j not in ['0','1','2','3','4','5','6','7','8','9']: flag+=1 if flag==0: sum=sum+eval(b) else: c=a count+=1 break if count==0: print("All OK") print("Process Completed") print("avg grade = {:.2f}".format(sum/s)) else: print("Error for data \"{}\"! Break".format(c)) print("Process Completed")