我是靠谱客的博主 超帅金针菇,这篇文章主要介绍PTA|7-1 jmu-python-异常-学生成绩处理专业版,现在分享给大家,希望可以做个参考。

小明在帮助老师统计成绩,老师给他的是一组数据。数据的第1行代表学生数n,后面
的n行代表每个学生的成绩。成绩是整数类型。小明编写了一个程序,该程序可以批量
处理数据,统计所有学生的平均分。当数据没有任何错误时,提示'All OK',当数据有
一些错误(某行是浮点数、某行是非整数字符)时,可以提示哪些数据出错,并最后提示
第几行出错,出错的原因,共出错多少行。对于另一些小错误,如某行虽然是整数,但
是左右有多余的空格,可以将空格去除掉进行正常统计。

在最后输出:
共处理多少行数据,几行正确,几行错误,平均成绩(保留两位小数)。

进阶要求:
有可能碰到要求输入n行,后面的数据却小于n行。要求处理这种情况。碰到这种情况。
输出end of files,并统计现有行数。见样例3

输入格式:

第1行为n
接下来输入<=n行数据进行测试

输出格式:

见样例输出。输出错误原因的时候,需要将整行输出(如果该行有左右空格,需要将左右空格也输出)

输入样例1:

复制代码
1
2
3
4
5
3 1 2 3

输出样例1:

复制代码
1
2
3
4
5
Total: 3 OK: 3 Error: 0 avg grade = 2.00

输入样例2:

复制代码
1
2
3
4
5
6
7
8
5 1 2 a b 5 3

输出样例2:

复制代码
1
2
3
4
5
6
7
8
9
10
11
line 3 error for input " a " line 4 error for input " b 5" Total: 5 OK: 3 Error: 2 avg grade = 2.00

输入样例3:

复制代码
1
2
3
4
5
5 a 2 3

输出样例3:

复制代码
1
2
3
4
5
6
7
line 1 error for input " a" end of files Total: 3 OK: 2 Error: 1 avg grade = 2.50

提示:对于样例3,如果是在IDLE中进行测试,可在输入最后一行并回车后,按'Ctrl+D'结束输入。

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
n=int(input()) sum=0 flag=0 temp=n count=0 count1=0 l=[] while True: try: l.append(input()) except: break for i in range(len(l)): count+=1 a=0 a=l[i] try: a=int(a) sum=sum+a count1+=1 except: print('line {} error for input "{}"'.format(count,a)) flag+=1 #if flag==0: #print("All OK") if count<n: print("end of files") print("Total: {}".format(len(l))) print("OK: {}".format(count1)) print("Error: {}".format(flag)) print("avg grade = {:.2f}".format(sum/count1))

最后

以上就是超帅金针菇最近收集整理的关于PTA|7-1 jmu-python-异常-学生成绩处理专业版的全部内容,更多相关PTA|7-1内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部