学生成绩管理系统V1.0
某班有最多不超过30人(具体人数由键盘输入)参加某门课程的考试,用一维数组作函数参数编程实现如下学生成绩管理:
(1)录入每个学生的学号和考试成绩;
(2)计算课程的总分和平均分;
(3)按成绩由高到低排出名次表;
(4)按学号由小到大排出成绩表;
(5)按学号查询学生排名及其考试成绩;
(6)按优秀(90~100)、良好(80~89)、中等(70~79)、及格(60~69)、不及格(0~59)5个类别,统计每个类别的人数以及所占的百分比;
(7)输出每个学生的学号、考试成绩。
#include <iostream>
#include <iomanip>
using namespace std;
void input(int a[], float b[],int);
void caculate(float a[],int);
void sort_in_descending_order_by_score(int a[], float b[],int);
void sort_in_ascending_order_by_number(int a[],float b[],int);
void search(int a[],float b[],int);
void statistic(float a[],int);
int main()
{int n;cout << "Input student number(n<30):";cin >> n;int choice;int xvehao[30];float score[30];while (1){cout << endl;cout << "Management for Students' scores" << endl;cout << "1.Input record" << endl;cout << "2.Caculate total and average score of course" << endl;cout << "3.Sort in descending order by score" << endl;cout << "4.Sort in ascending order by number" << endl;cout << "5.Search by number" << endl;cout << "6.Statistic analysis" << endl;cout << "7.List record" << endl;cout << "0.Exit" << endl;cout << "Please Input your choice:";cin >> choice;if (choice == 1)input(xvehao, score, n);else if (choice == 2)caculate(score, n);else if (choice == 3)sort_in_descending_order_by_score(xvehao, score, n);else if (choice == 4)sort_in_ascending_order_by_number(xvehao, score, n);else if (choice == 5)search(xvehao, score, n);else if (choice == 6)statistic(score, n);else if (choice == 7)sort_in_ascending_order_by_number(xvehao, score, n);else if (choice == 0)break;else{cout << "Please input any number from 0 to 7!"<<endl; continue;}}return 0;
}
void input(int a[], float b[],int n)
{int i;cout << "Input student's ID, name and score:" << endl;for (i = 1; i <= n; i++){cin >> a[i] >> b[i];}}
void caculate(float a[], int n)
{float sum=0,aver;int i;for (i = 1; i <= n; i++){sum += a[i];}aver = sum / n;cout << "sum=" << sum << " , aver=" << fixed << setprecision(2) << aver;cout << endl;
}
void sort_in_descending_order_by_score(int a[], float b[], int n)
{int i, j,k;for (i = 1; i <= n; i++){k = i;for (j = i+1; j <= n ; j++){if (b[k] < b[j])k = j;}int x = a[i], y = b[i];a[i] = a[k]; b[i] = b[k];a[k] = x; b[k] = y;}for (i = 1; i <= n; i++){cout << a[i] << " " << b[i] << endl;}
}
void sort_in_ascending_order_by_number(int a[], float b[], int n)
{int i, j,k;for (i = 1; i <= n; i++){k = i;for (j = i + 1; j <= n; j++){if (a[j] < a[k])k = j;}int x = a[i], y = b[i];a[i] = a[k]; b[i] = b[k];a[k] = x; b[k] = y;}for (i = 1; i <= n; i++){cout << a[i] << " " << b[i] << endl;}
}
void search(int a[], float b[], int n)
{int number;cin >> number;int i,k;for (i = 1; i <= n; i++){if (a[i] == number){cout << a[i] << " " << b[i]<<endl;k = 1;break;}else k = 0;}if (k == 0)cout << "Can't find this student!"<<endl;
}
void statistic(float a[], int n)
{int i;int A = 0, B = 0, C = 0, D = 0, E = 0, F = 0;for (i = 1; i <= n; i++){if (a[i] == 100)A++;else if (a[i] >= 90 && a[i] <= 99)B++;else if (a[i] >= 80 && a[i] <= 89)C++;else if (a[i] >= 70 && a[i] <= 79)D++;else if (a[i] >= 60 && a[i] <= 69)E++;else F++;}cout << "<60 " << F<< " " <<fixed<<setprecision(2)<< ((float)F / n) * 100 << "%" << endl;cout << "60-69 " << E<< " " << fixed << setprecision(2) << ((float)E / n) * 100 << "%" << endl;cout << "70-79 " << D<< " " << fixed << setprecision(2) << ((float)D / n) * 100 << "%" << endl;cout << "80-89 " << C<< " " << fixed << setprecision(2) << ((float)C / n) *100<< "%"<<endl;cout << "90-99 " << B<< " " << fixed << setprecision(2) << ((float)B / n) * 100 << "%" << endl;cout << "100 " << A<< " " << fixed << setprecision(2) << ((float)A / n) * 100 << "%" << endl;
}
相关文章:
学生成绩管理系统V1.0
某班有最多不超过30人(具体人数由键盘输入)参加某门课程的考试,用一维数组作函数参数编程实现如下学生成绩管理: (1)录入每个学生的学号和考试成绩; (2)计算课程的总分…...
嵌入式:ARM Day1
1. 思维导图 2.作业一 3.作业2...
Android 网络协议与网络编程
一、TCP/IP协议 Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联 协议,是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP 协议组成。协议采用了4层的层级结构。…...
【讯飞星火认知大模型】大模型之星火手机助理
目录 1. 讯飞星火认知大模型介绍 2. API 申请 3. 星火手机助理 4. 效果展示 1. 讯飞星火认知大模型介绍 讯飞星火认知大模型是科大讯飞自研的基于深度学习的自然语言处理模型,它可以理解和生成中文,执行多种任务,如问答、翻译、写作、编…...
centos中的swap.img可以删除吗
swap.img 是 CentOS 系统中的交换分区文件,用于辅助内存管理。交换分区在系统内存不足时用于存储不常用的数据,而不是直接写入硬盘。一般情况下,不建议删除交换分区文件,因为它对系统的正常运行非常重要。 如果您真的希望删除交换…...
Java多线程编程中的线程死锁
Java多线程编程中的线程死锁 在多线程编程中,线程死锁是一种常见的问题,它发生在两个或多个线程互相等待对方释放资源的情况下,导致程序无法继续执行。本文将介绍线程死锁的概念、产生原因、示例以及如何预防和解决线程死锁问题。 线程死…...
在浏览器中使用javascript打印HTML中指定Div带背景图片内容生成PDF电子证书查询的解决方案
在浏览器中使用javascript打印HTML中指定Div带背景图片内容生成PDF电子证书查询的解决方案 一、指定内容打印二、背景图片打印1.CSS背景图片设置2.div相对定位居中 三、完整案例展示1.CSS样式表2.HTML容器构建 一、指定内容打印 要调用浏览器中的打印功能,并指定需…...
【Redis实践篇】使用Redisson 优雅实现项目实践过程中的5种场景
文章目录 1.前言2.使用方式1. 添加Redisson依赖:2. 配置Redis连接信息3. 使用场景3.1. 分布式锁3.2. 限流器(Rate Limiter)3.3. 可过期的对象(Expirable Object)3.4. 信号量(Semaphore)3.5. 分布…...
污水处理厂人员定位方案介绍
污水处理厂人员定位在现代化的污水处理厂中具有重要的意义,它可以带来多方面的优势和好处: 安全管理: 污水处理厂通常涉及到各种危险环境和设备,如化学品、高压设备等。人员定位系统可以追踪人员的位置,确保他们不会进…...
约数个数(质因子分解)
思路: (1)由数论基本定理,任何一个正整数x都能写作,其中p1,p2..pk为x的质因子。 (2)由此可以推断,要求一个数约数的个数,注意到约数就是p1,p2...pk的一种组合ÿ…...
【QT】 QSS样式表设计一文了解
很高兴在雪易的CSDN遇见你 ,给你糖糖 欢迎大家加入雪易社区-CSDN社区云 前言 本文分享QT界面设计中的QSS样式技术,主要从**、**和**方面展开,希望对各位小伙伴有所帮助!学会了QSS样式设计,就可以开动你的审美&#…...
9-AJAX-1入门
AJAX 目录 AJAX 概念和 axios 使用认识 URLURL 查询参数常用请求方法和数据提交HTTP协议-报文接口文档案例 - 用户登录form-serialize 插件 01.AJAX 概念和 axios 使用 目标 了解 AJAX 概念并掌握 axios 库基本使用 讲解 什么是 AJAX ? mdn 使用浏览器的 XMLHttpRequest…...
ssh免密登录
客户端 第一步:生成密钥 ssh-keygen -t rsa 第二步:从“~/.ssh/id_rsa.pub”拷贝公钥 服务器端 填写公钥 打开authorized_keys,并把刚刚的公钥填进去 重启服务 sudo systemctl restart sshd...
全球公链周进展-2023/8/14
Tokenview每周周一准时更新全球公链最新进展,致力于为全球公链爱好者整合最新项目进展。 过去一周,明星项目动态如下: 第 115 次以太坊核心开发者共识会议总结 以太坊客户端 Geth v1.12.1版本发布,聚焦Cancun硬分叉 以太坊Holesk…...
python装饰器详解,python装饰器笔记心得
装饰器 装饰器是程序开发中经常会用到的一个功能,用好了装饰器,开发效率如虎添翼,所以这也是Python面试中必问的问题。但对于好多初次接触这个知识的人来讲,这个功能有点绕,自学时直接绕过去了,然后面试问…...
【C语言】每日一题(寻找数组的中心下标)
寻找数组的中心下标,链接奉上 方法 暴力循环前缀和 暴力循环 思路: 依旧是我们的老朋友,暴力循环。 1.可以利用外层for循环,循环变量为数组下标,在循环内分别求出下标左边与右边的sum 2.在边界时讨论&…...
centos 安装 nginx配置ssl 和 获取用户真实ip
安装所需环境 nginx 是用 C语言开发的,建议在Linux上使用,如果是windows用户,也可以使用windows版本。 一. gcc 安装 安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果有 gcc 环境,则不…...
RocketMQ 消息消费 轮询机制 PullRequestHoldService
1. 概述 先来看看 RocketMQ 消费过程中的轮询机制是啥。首先需要补充一点消费相关的前置知识。 1.1 消息消费方式 RocketMQ 支持多种消费方式,包括 Push 模式和 Pull 模式 Pull 模式:用户自己进行消息的拉取和消费进度的更新Push 模式:Broker…...
springboot 数据库版本升级管理常用解决方案
目录 一、前言 1.1 单独执行初始化sql 1.2 程序自动执行 二、数据库版本升级管理问题 三、spring 框架sql自动管理机制 3.1 jdbcTemplate 方式 3.1.1 创建数据库 3.1.2 创建 springboot 工程 3.1.3 初始化sql脚本 3.1.4 核心配置类 3.1.5 执行sql初始化 3.2 配置文…...
78. 子集
题目描述 给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 示例 1: 输入:nums [1,2,3] 输出:[[],[1],[2…...
2026届必备的五大AI辅助论文神器推荐
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 依托自然语言处理跟知识图谱技术,AI开题报告工具能够针对研究领域文献开展自动解…...
ARM交叉编译避坑指南:搞懂-mfloat-abi参数,告别ABI不兼容的诡异错误
ARM交叉编译避坑指南:搞懂-mfloat-abi参数,告别ABI不兼容的诡异错误 在嵌入式开发领域,ARM架构的交叉编译是每个工程师的必修课。但当你信心满满地配置好工具链,执行make命令时,突然跳出的fatal error: gnu/stubs-soft…...
3步搞定B站4K视频下载:小白也能轻松掌握的大会员视频保存技巧
3步搞定B站4K视频下载:小白也能轻松掌握的大会员视频保存技巧 【免费下载链接】bilibili-downloader B站视频下载,支持下载大会员清晰度4K,持续更新中 项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader 还在为B站上…...
从Hello World到生产部署:Agent开发完整教程
从Hello World到生产部署:Agent开发完整教程引言:为什么现在是学习Agent开发的黄金时代? 痛点引入:从“脚本化工具人”到“自主智能助手”的瓶颈 各位读者朋友们,我是老周,一个在互联网摸爬滚打了12年、从传…...
毕业季论文救星:百考通AI如何用技术破解学术写作五大难题
一份能够同时降低重复率和AI风险,自动适配学历层次,还能保护隐私的智能工具,正悄然改变着学术写作的固有模式。 又到一年毕业季,图书馆、实验室、宿舍里,无数学生正面对同一场“战役”——毕业论文。查重率居高不下、格…...
Windows 11系统优化解决方案:Win11Debloat完全指南
Windows 11系统优化解决方案:Win11Debloat完全指南 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter and custo…...
别再猜了!Unity URP灯光数量上限到底在哪设?详解Universal RP Asset配置
Unity URP灯光数量上限配置全指南:从原理到实战 刚接触Unity URP渲染管线的开发者,经常会遇到一个令人困惑的问题:明明在场景中放置了多个灯光,为什么有些灯光会莫名其妙地消失或闪烁?这背后其实涉及到URP对灯光数量的…...
Visual Studio Code远程开发:无缝调试云端Pixel Dimension Fissioner
Visual Studio Code远程开发:无缝调试云端Pixel Dimension Fissioner 1. 为什么需要远程开发 想象一下这样的场景:你的笔记本性能有限,但需要运行一个计算密集型的Pixel Dimension Fissioner项目。传统做法可能是把代码上传到服务器&#x…...
如何排除AWR中的Idle Events_过滤不需要关注的网络等待与定时器
Idle Events是Oracle中wait_class为Idle的等待事件,如SQL*Net message from client等,它们反映客户端空闲状态而非数据库性能问题,若不剔除会干扰AWR分析、误导DBA定位假热点。什么是 Idle Events,为什么它们会干扰 AWR 分析awr 报…...
Shopify开发者必看:用Postman搞定GraphQL Admin API的完整流程(含Java代码示例)
Shopify开发者实战:Postman与Java整合的GraphQL Admin API高效开发指南 GraphQL正在重塑电商API的交互方式,Shopify作为全球领先的SaaS电商平台,其Admin API的GraphQL实现为开发者提供了更灵活的数据操作能力。本文将带您从零构建完整的开发工…...
