简单学生成绩分析系统
存储50名学生的信息,包括:学号,姓名,语文成绩,
数学成绩,英语成绩(成绩为随机生成0-100之间的整数)
(1)计算每名同学的平均成绩并排序
(2)分别计算每门课程的平均分
(3)输出每门课程最高分,最低分学生名单,统计各分段
学生人数:0-59,60-69,70-79,80-89,90-100
# @Time : 2020/10/5 18:04
# @Author : Yurken
# @File : 10.5日作业.py
import randomname = ['包乐山', '包咏琦', '杨强', '李晶晶', '於斌涛', '石卓', '贾玉盈', '石江南', '乔倩倩', '杨光', '王霖', '贺立松', '任可', '张翔', '王振强', '吕彦良','黛肖黎', '秦斌', '包锐', '包礼军', '黄宁宁', '许杰', '吴娜', '后箫航', '杜玉曦', '赫倩倩', '杨玉倩', '张蕊', '王蕊蕊', '孝雪霞', '曹建', '曾嫖丽', '杜勇','弥玉薇', '常睿娟', '后妙慧', '罗亚婷', '骆冰冰', '后田田', '包圆圆', '孙启浩', '周佳颖', '张孙辰', '黄砺锋', '周南', '严楚楚', '张乐缘', '刘瑛轩', '谭静','吴逸菲']
num = [0] * 50 # 学号
f = 1804011001
for i in range(0, 50):num[i] = f + i
chinese = random.choices(range(0,100),k=50,weights=range(0,100)) # 随机生成语文成绩,成绩可重复,此随机方式导致每次都有不一样的成绩
math = random.choices(range(0,100),k=50,weights=range(0,100)) # 随机生成数学成绩
english = random.choices(range(0,100),k=50,weights=range(0,100)) # 随机生成英语成绩
information = [name, num, chinese, math, english] # 学生信息生成
avegrade=[0]*50
for i in range(0,50):avegrade[i]=(chinese[i]+math[i]+english[i])/3 # 计算语数英三科平均成绩
avegrade = [round(i,2) for i in avegrade] # 将总平均成绩保留两位小数
a=[None]*50
for i in range(0,50):a[i]=[name[i],num[i],avegrade[i]] # 将姓名,学号,总平均成绩合成a列表
b=sorted(a, key=lambda x:x[2], reverse=True) # 将a列表降序成为b列表
print("请选择你想要的操作:\n""1.查看学生信息\n""2.查看总平均成绩排序\n""3.查看语文成绩平均分\n""4.查看数学成绩平均分\n""5.查看英语成绩平均分\n""6.查看每门课程最低分名单\n""7.查看每门课程最高分名单\n""8.统计各分段学生人数\n""0.退出")
q=int(input())
while q!=0:if q==1:information=[None]*50for i in range(0, 50):information[i] = [name[i], num[i], chinese[i],math[i],english[i]]for i in information:print(" ".join(str(k) for k in i)) # 将学生信息以空格分隔输出print("请继续输入:")q = int(input())elif q == 2:for i in b:print(" ".join(str(k) for k in i))print("请继续输入:")q = int(input())elif q==3:avechinese =0for i in chinese:avechinese+=iavechinese=avechinese/50avechinese= round(avechinese,3)print("语文平均成绩为:",avechinese)print("请继续输入:")q = int(input())elif q==4:avemath = 0for i in math:avemath += iavemath = avemath / 50avemath= round(avemath,3)print("数学平均成绩为:",avemath)print("请继续输入:")q = int(input())elif q==5:avenglish = 0for i in english:avenglish += iavenglish = avenglish / 50avenglish= round(avenglish,3)print("英语平均成绩为:", avenglish)print("请继续输入:")q = int(input())elif q==6:print("语文最低分为:")aveyw1 = [None] * 50for i in range(0, 50):aveyw1[i] = [name[i], chinese[i]]for i in range(0,50):yw=min(chinese)if yw==aveyw1[i][1]:print(aveyw1[i])print("数学最低分为:")avesx1 = [None] * 50for i in range(0, 50):avesx1[i] = [name[i], math[i]]for i in range(0, 50):sx = min(math)if sx == avesx1[i][1]:print(avesx1[i])print("英语最低分为:")aveyy1 = [None] * 50for i in range(0, 50):aveyy1[i] = [name[i], english[i]]for i in range(0, 50):yy = min(english)if yy == aveyy1[i][1]:print(aveyy1[i])print("请继续输入:")q = int(input())elif q==7:print("语文最高分为:")aveyw = [None] * 50for i in range(0, 50):aveyw[i] = [name[i], chinese[i]]for i in range(0,50):yw=max(chinese)if yw==aveyw[i][1]:print(aveyw[i])print("数学最高分为:")avesx = [None] * 50for i in range(0, 50):avesx[i] = [name[i], math[i]]for i in range(0, 50):sx = max(math)if sx == avesx[i][1]:print(avesx[i])print("英语最高分为:")aveyy = [None] * 50for i in range(0, 50):aveyy[i] = [name[i], english[i]]for i in range(0, 50):yy = max(english)if yy == aveyy[i][1]:print(aveyy[i])print("请继续输入:")q = int(input())elif q==8:ywe=0ywd=0ywc=0ywb=0ywa=0for i in chinese:if 0<=i<=59:ywe+=1elif 60<=i<=69:ywd+=1elif 70<=i<=79:ywc+=1elif 80<=i<=89:ywb+=1elif 90<=i<=100:ywa+=1print('语文成绩分布:\n0-59:',ywe,'人\n60-69:',ywd,'人\n70-79:',ywc,'人\n80-89:',ywb,'人\n90-100:',ywa,'人')sxa=sxb=sxc=sxd=sxe=0for i in math:if 0 <= i <= 59:sxe += 1elif 60 <= i <= 69:sxd += 1elif 70 <= i <= 79:sxc += 1elif 80 <= i <= 89:sxb += 1elif 90 <= i <= 100:sxa += 1print('数学成绩分布:\n0-59:', sxe, '人\n60-69:', sxd, '人\n70-79:', sxc, '人\n80-89:', sxb, '人\n90-100:', sxa, '人')yya=yyb=yyc=yyd=yye=0for i in english:if 0 <= i <= 59:yye += 1elif 60 <= i <= 69:yyd += 1elif 70 <= i <= 79:yyc += 1elif 80 <= i <= 89:yyb += 1elif 90 <= i <= 100:yya += 1print('英语成绩分布:\n0-59:', yye, '人\n60-69:', yyd, '人\n70-79:', yyc, '人\n80-89:', yyb, '人\n90-100:', yya, '人')print("请继续输入:")q = int(input())elif q==0:print('程序已结束!')break
简单学生成绩分析系统相关推荐
- java学生成绩分析系统spring源码
开发工具:idea (eclipse) 环境:jdk1.8 mysql 数据库库连接工具 navcat 学生成绩分析系统 系统主要使用技术 • Struts2--请求响应 • Spring--jav ...
- 【细节拉满】Hadoop课程设计项目,使用idea编写基于MapReduce的学生成绩分析系统(附带源码、项目文件下载地址)
目录 1 数据源(学生成绩.csv) 2 hadoop平台上传数据源 3 idea代码 3.1 工程框架 3.2 导入依赖 3.3 系统主入口(menu) 3.4 六个mapreduce 3.4.1 ...
- JAVA学生成绩分析系统任务书,学籍管理系统任务书
本项目要求设计"学生学籍管理系统",其使用人群为各学校学籍管理人员,目的是提高学籍管理人员的办公效率和减少差错率."学籍管理"要求实现对学生的入学个人信息注册. ...
- 简单学生成绩查询系统 按成绩排序 按姓名排序
今天学习了结构体,为了强化和理解,参考大神的带码,自己改了一个. 把 按成绩排序,和按姓名排序,封装了两个函数. (排序都是,冒泡算法) 运用了 结构体 和结构体数组的知识. 源代码: #includ ...
- 大学计算机 学生成绩表格,学生成绩分析系统的设计与实现
Design and Implementation of Students' Marks Analysis System Yang Yang 1 杨阳,(1987-),男,硕士,主要研究方向为数据挖掘 ...
- ssm+jsp计算机毕业设计基于web的学生成绩分析系统d7l60(程序+lw+源码+远程部署).
项目运行 项目含有源码(见文末).文档.程序.数据库.配套开发软件.软件安装教程 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ E ...
- [附源码]java+ssm计算机毕业设计基于web的学生成绩分析系统d7l60(源码+程序+数据库+部署)
项目运行 项目含有源码(见文末).文档.程序.数据库.配套开发软件.软件安装教程 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ E ...
- c语言大作业成绩分析问题,成绩分析系统C语言.doc
成绩分析系统C语言 学生成绩分析系统 目录 摘 要2 1.绪论2 2.系统分析2 2.1 可行性分析3 2.1.1技术分析3 2.1.2经济分析3 2.1.3 操作可行性3 2.2需求分析3 2.2. ...
- python制作成绩分析系统_python实现学生成绩测评系统
本文实例为大家分享了python实现学生成绩测评系统的具体代码,供大家参考,具体内容如下 1.问题描述(功能要求): 根据实验指导书要求,完成相关软件系统的设计,要求内容翔实,条理清晰,图文并茂(流程 ...
- [附源码]java毕业设计学生考试成绩分析系统
项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...
最新文章
- 网络营销——浅析网站改版之后对网站展开新的网络营销有哪些影响?
- VTK:可视化算法之CombustorIsosurface
- sphinx4 FrontEnd流程分析
- spring学习(41):属性注入
- 智慧新泰时空大数据与云平台_智慧警务大数据云平台开发情报研判系统解决方案...
- HDU 6188 Duizi and Shunzi
- mysql 存入图_c# 如何向mysql数据库中存入图片
- java 绘制sin函数图像_MATLAB基础学习之三维曲线的绘制
- 在IIS6上部署MVC2网站(续篇)
- java数组与以逗号分隔开的字符串的相互转换
- 安装mysql程序运行出错_如何解决mysql安装后.net程序运行出错的问题
- 网上商城APP系统源码 B2C商城系统源码
- Android半透明提示效果的实现
- windows10 快速切换网络适配器
- At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger fo
- 淘宝/天猫获取卖出的商品订单列表 API
- 模拟城市我是市长服务器维护多久,《模拟城市:我是市长》教你一招渡过新手困难期...
- 金山病毒库自定义服务器,将金山毒霸10全功能版本(带离线病毒库)安装到离线电脑,操作方法!!!亲测可用...-爱毒霸交流论坛...
- 解决win10系统无法安装.Net framework3.5,安装Visual Studio 2010提示你的电脑上的应用需要使用以下Windows功能:.Net framework3.5(包括
- 联想拯救者y7000电脑开机一直是锁屏界面,点一下就黑屏,无法进入输密码界面
热门文章
- 《巴菲特致股东的信》十年期固定行使价格期权对公司的侵蚀-计算过程演示
- 2.4gwifi最高下载速度_2.4g网速(2.4gwifi最高下载速度)
- 如何巧妙应用shift键的解说
- Video Understanding(2)——Temporal Action Detection时序动作检测
- zblog如何调用HTML,Zblog教程:模板文件与调用标签详细说明
- 推荐系统-基于用户的推荐在社交网络中的应用
- 第十五篇,STM32的SPI串行通信协议
- 入行嵌入式开发若干年悟出的道理
- 《不只是美:信息图表设计原理与经典案例》—— 2.7 更加灵活
- Spring【三】容器与Bean扩展点