7-9 jmu-python-异常-学生成绩处理专业版 (25 分)
小明在帮助老师统计成绩,老师给他的是一组数据。数据的第1行代表学生数n,后面
的n行代表每个学生的成绩。成绩是整数类型。小明编写了一个程序,该程序可以批量
处理数据,统计所有学生的平均分。当数据没有任何错误时,提示'All OK',当数据有
一些错误(某行是浮点数、某行是非整数字符)时,可以提示哪些数据出错,并最后提示
第几行出错,出错的原因,共出错多少行。对于另一些小错误,如某行虽然是整数,但
是左右有多余的空格,可以将空格去除掉进行正常统计。
在最后输出:
共处理多少行数据,几行正确,几行错误,平均成绩(保留两位小数)。
进阶要求:
有可能碰到要求输入n行,后面的数据却小于n行。要求处理这种情况。碰到这种情况。
输出end of files,并统计现有行数。见样例3
输入格式:
第1行为n
接下来输入<=n行数据进行测试
输出格式:
见样例输出。输出错误原因的时候,需要将整行输出(如果该行有左右空格,需要将左右空格也输出)
输入样例1:
3
1
2
3
输出样例1:
Total: 3
OK: 3
Error: 0
avg grade = 2.00
输入样例2:
5
1
2
a
b 5
3
输出样例2:
line 3 error for input " a "
line 4 error for input " b 5"
Total: 5
OK: 3
Error: 2
avg grade = 2.00
输入样例3:
5
a
2
3
输出样例3:
line 1 error for input " a"
end of files
Total: 3
OK: 2
Error: 1
avg grade = 2.50
提示:对于样例3,如果是在IDLE中进行测试,可在输入最后一行并回车后,按'Ctrl+D'结束输入。
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))
7-9 jmu-python-异常-学生成绩处理专业版 (25 分)的更多相关文章
- java代码初学者适用,输入学生成绩,符合要求的过~~~~注意数据范围
总结:没有基础,我从点滴开始, package com.aaa; import java.util.Scanner; //输入“repate ”次数,输入学生成绩,低于60分,输出fail.否则输入p ...
- Java初学者作业——学生成绩等级流程图练习
返回本章节 返回作业目录 在Word 中编写算法实现学生成绩等级的输出,并绘制对应算法的流程图. 功能要求:输入学生成绩,输出对应成绩等级,输出规则如下: 学生成绩区间 对应成绩等级 [90,100] ...
- 学生成绩管理C语言版
[标题]学生成绩管理的设计与实现 [开发语言]C语言 [概要设计]使用结构体存储学生的学号.姓名和成绩信息,实现对学生成绩类的基本操作:增加.删除.查询.排序 [测试数据]按提示输入5组正确的正确的数 ...
- R_Studio(学生成绩)对数据缺失值md.pattern()、异常值分析(箱线图)
我们发现这张Gary.csv表格存在学生成绩不完全的(五十三名学生,三名学生存在成绩不完整.共四个不完整成绩) 79号大学语文.高等数学 96号中国近代史纲要 65号大学体育 (1)NA表示数据集中的 ...
- JAVA基础代码分享--学生成绩管理
问题描述: 从键盘读入学生成绩,找出最高分,并输出学生成绩等级. 成绩>=最高分-10 等级为’A’ 成绩>=最高分-20 等级为’B’ 成绩>=最高分-30 等级为’C’ ...
- sql面试题一 学生成绩
sql面试题一 学生成绩 原帖链接:http://topic.csdn.net/u/20081020/15/1ABF54D0-F401-42AB-A75E-DF90027CEBA0.html 表架 ...
- python 异常
引用一段来自菜鸟教程的文章:http://www.runoob.com/python/python-exceptions.html Python 异常处理 python提供了两个非常重要的功能来处理p ...
- Java项目:学生成绩管理系统(二)
学生成绩管理系统(二):项目介绍 一.设计要求: 1.1 简单的图形界面登录功能. 1.2 对数据库的的信息的查询功能. 1.3 对数据库的的信息的修改功能. 1.4 对数据库的的信息的删除功能. 1 ...
- Java项目:学生成绩管理系统(一)
学生成绩管理系统(一) 项目名称:学生成绩管理系统 项目需求分析(Need 需求): (1)该系统的用户分为教师和学生.教师的功能有:管理某一学生或课程的信息以及成绩,包括增.删.查.报表打印等:学生 ...
随机推荐
- pom配置项目build jar 包含源码的配置
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> ...
- GSON解译Json为DTO
除了用okhttp网络库外,还用到google的gson库. 1. uti类的对象一般都用懒汉模式.这次gson也是用懒汉模式. public class GsonTools { private st ...
- VirtualBox虚拟机安装
目录 安装前准备 1.开始安装,安装很简单,直接上图 2.设置全局路径,这里主要是方便以后创建虚拟机的时候不用每次都去选择存放位置,默认是存放到C盘 安装前准备 系统:Windows 10 专业版 软 ...
- navicat中执行PostgreSQL错误解决:ERROR: current transaction is aborted, commands ignored until end of transaction block
错误出现: 含有错误的查询后,选中insert语句无法执行,报错current transaction is aborted, commands ignored until end of transa ...
- imx6q-plus-Android6.0下uboot添加网卡驱动
1.文件:iTOP-iMX6_android6.0.1/bootable/bootloader/uboot-imx/include/configs/mx6sabre_common.h修改如下:#def ...
- 2018SEERC Points and Rectangles (CDQ分治)
题:http://codeforces.com/gym/101964/problem/K 分析:https://blog.csdn.net/qq_43202683/article/details/98 ...
- Codeforces Round#615 Div.3 解题报告
前置扯淡 真是神了,我半个小时切前三题(虽然还是很菜) 然后就开始看\(D\),不会: 接着看\(E\),\(dp\)看了半天,交了三次还不行 然后看\(F\):一眼\(LCA\)瞎搞,然后\(15m ...
- css样式表---样式表分类、选择器
一.样式表分三类: 1.内联样式表.——放在元素的开始标记中.——只对当前元素起作用.<input name="txt" style="border:0px; bo ...
- relieved|auction|calculate|campaign|charge for |chartered
ADJ-GRADED 感到宽慰的;感到安心的;宽心的If you are relieved, you feel happy because something unpleasant has not h ...
- python代码覆盖率统计-coverage
coverage.py是一个用来统计python程序代码覆盖率的工具.它使用起来非常简单,并且支持最终生成界面友好的html报告.在最新版本中,还提供了分支覆盖的功能. 官方网站: http://ne ...