2-3 任务:成绩等级评定

news2024/12/27 19:04:55

在这里插入图片描述
在编程中,多分支结构是控制程序流程的重要手段之一,它允许根据不同的条件执行不同的代码块。在处理成绩等级评定的任务时,我们可以看到有四种不同的多分支结构处理方式:并列式、嵌套式、延拓式和开关式。每种方式都有其优缺点,适用于不同的场景。

实战概述

  1. 并列式多分支结构:使用多个if语句来处理不同的条件。这种方式的优点是易于理解和编写,但缺点是效率较低,特别是当多个条件需要相同操作时,会导致代码重复。
  2. 嵌套式多分支结构:使用if-else语句进行条件的嵌套。这种方式的优点是逻辑层次分明,效率较高,但当嵌套层次过多时,代码会显得复杂,难以维护。
  3. 延拓式多分支结构:使用if-else if-else结构来处理多个条件。这种方式的优点是结构只有一层,易于阅读,同时效率也较高,是处理多个互斥条件时的首选方式。
  4. 开关式多分支结构:使用switch-case语句来处理离散型的条件。这种方式的优点是书写简洁,效率高,但只适用于处理离散值的情况,对于范围型的条件则不适用。

成绩等级评定实战

在成绩等级评定的任务中,我们可以看到使用上述四种结构实现的代码示例。通过比较这些示例,我们可以总结出:

  • 并列式:适用于条件简单且独立的情况,但在处理成绩等级时,由于条件重叠,导致效率低下。
  • 嵌套式:逻辑清晰,但随着条件的增加,嵌套层数增多,代码可读性降低。
  • 延拓式:在处理成绩等级评定时表现最佳,逻辑清晰,代码简洁,且易于维护。
  • 开关式:由于成绩是连续的,需要转换为离散值才能使用switch-case,这增加了实现的复杂性。

拓展练习

在拓展练习中,我们看到了如何使用多分支结构来确定给定日期是一年的第几天。这个任务涉及到了:

  • 输入处理:使用Scanner类获取用户输入。
  • 闰年判断:通过计算确定是否为闰年。
  • 月份天数计算:使用switch语句或数组来计算每个月的天数。
  • 日期计算:累加天数加上输入的日数,得到一年中的天数。

总结提高

在实际编程中,选择合适的多分支结构对于代码的可读性、可维护性和效率至关重要。延拓式多分支结构因其简洁性和高效性,通常在处理多个互斥条件时被优先考虑。然而,根据具体问题的不同,其他类型的多分支结构也可能更为适用。因此,理解每种结构的特点并在适当的场景中使用它们是提高编程技能的关键。

在处理实际问题时,还需要考虑异常处理和资源管理,如在拓展练习中所示,通过try-catch-finally结构确保异常被妥善处理,并通过finally块确保资源(如Scanner对象)被正确释放。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1630991.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

上位机开发PyQt5(一)【创建窗口、窗口标题、气泡、显示图片和图标、显示文字】

目录 一、 第一个Qt窗口 二、PyQt模块简介 三、窗口标题和气泡 setWindowTitle resize setToolTip 四、标签QLabel显示图片和图标 setPixmap setWindowIcon resize(label.pixmap().size()) 五、标签QLabel显示文字 setText QFont setPointSize setFont set…

Python —— 模块、包

一、模块和包 1. 模块module 模块是 Python 程序架构的一个核心概念。Python中模块就是一个.py文件,模块中可以定义函数,变量,类。模块可以被其他模块引用 1.1. 创建模块文件 创建文件:utils.py # 定义变量 name 张三# 定义函…

【论文阅读】ViTAE:Vision transformer advanced by exploring intrinsic inductive bias

ViTAE:Vision transformer advanced by exploring intrinsic inductive bias 论文地址摘要:简介:3 方法论3.1 重温视觉变压器3.2 ViTAE3.3 缩减单元3.4 Normal cell3.5 模型细节 4 训练4.1 Implementation details4.2 Comparison with the state-of-the-…

选择洗地机需要注意什么?六大选购技巧,亲测有效

这些年,洗地机行业的「卷」,就从来没停过!特别是最近一两年,随随便便升级点啥,都能出个新款!那么,面对种类繁多的洗地机,我们应该怎么去选购呢?今天笔者来给大家讲讲选择…

怎么通过PHP语言实现远程控制棋牌室

怎么通过PHP语言实现远程控制棋牌室呢? 本文描述了使用PHP语言调用HTTP接口,实现控制棋牌室,通过专用的包间控制器,来实现包间内所有电器以及门锁的独立控制。 可选用产品:可根据实际场景需求,选择对应的规…

穷人想要改命,是选择打工还是创业? 2024创业项目小成本!2024轻资产创业!2024风口行业!2024普通人做什么行业赚钱?

今日话题穷人想要改命,是选择打工还是创业? 改命的方式就是跳进水里,忍受呛水,学会游泳,这个过程越年轻实现越好,就像小鹰往山崖下跳,要么学会飞,要么就狠狠的被摔死。打工思维和创…

请编写函数fun,该函数的功能是:实现B=A+A‘,即把矩阵A加上A的转置,存放在矩阵B中。计算结果在main函数中输出。

本文收录于专栏:算法之翼 https://blog.csdn.net/weixin_52908342/category_10943144.html 订阅后本专栏全部文章可见。 本文含有题目的题干、解题思路、解题思路、解题代码、代码解析。本文分别包含C语言、C++、Java、Python四种语言的解法完整代码和详细的解析。 题干 请编…

回归预测 | MATLAB实现BO-BP贝叶斯优化BP神经网络多输入单输出回归预测

回归预测 | MATLAB实现BO-BP贝叶斯优化BP神经网络多输入单输出回归预测 目录 回归预测 | MATLAB实现BO-BP贝叶斯优化BP神经网络多输入单输出回归预测预测效果基本介绍程序设计参考资料预测效果 基本介绍 回归预测 | MATLAB实现BO-BP贝叶斯优化BP神经网络多输入单输出回归预测 B…

【论文阅读】互连网络的负载平衡路由算法 (GAL, Globally Adaptive Load-balancing 全局自适应负载平衡)

Globally Adaptive Load-balancing 全局自适应负载平衡 GAL: Globally Adaptive Load-balanced routing 全局自适应负载平衡路由 1. GAL on a ring2. GAL on higher dimensional torus3. 实验性能4. 算法稳定性 Stability总结 References Globally Adaptive Load-balancing 全…

node.js + @elastic/elasticsearch 操作elasticsearch数据库

我这边node.js 使用的是 koa2,elasticsearch是8.11.1版本 官网:https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/getting-started-js.html 一、elastic/elasticsearch 连接 elasticsearch数据库 如果elasticsearch没有设…

开发模型???

开发模型??? 一:什么是需求??二:开发模型2.1:软件的生命周期2.1.1:软件生命周期 2.2:常见开发模型2.2.1:瀑布模型2.2.2:螺旋模型2.2.3:增量模型 && 迭代模型 二级目录 一级目录二级目录二级目录二级目录三级目录 一:什么是需求?? 用户需求:通常就是一句话,没有…

网络原理(qq消息发送原理)

1.网络初识 IP地址 概念: IP地址主要⽤于标识⽹络主机、其他⽹络设备(如路由器)的⽹络地址。简单说,IP地址⽤于定位主机的⽹络地址。 就像我们发送快递⼀样,需要知道对⽅的收货地址,快递员才能将包裹送到…

时间序列生成数据,TransformerGAN

简介:这个代码可以用于时间序列修复和生成。使用transformer提取单变量或者多变时间窗口的趋势分布情况。然后使用GAN生成分布类似的时间序列。 此外,还实现了基于prompt的数据生成,比如指定生成某个月份的数据、某半个月的数据、某一个星期的…

Git变更账户、查看账户

1、变更账户 (1)修改当前文件夹用户 git config user.name “新用户名” git config user.email “新邮箱” (2)修改全局git用户 git config - -global user.name “新用户名” git config - -global user.email “新邮箱”…

TensorRT模型压缩

参考链接: https://www.jianshu.com/p/805b76c9d229 https://blog.csdn.net/chenhaogu/article/details/132677778 基本理论 TensorRT是一个高性能的深度学习推理优化器,可以为深度学习应用提供低延迟、高吞吐率的部署推理。TensorRT可用于对超大规模数…

(六)几何平均数计算 补充案例 #统计学 #CDA学习打卡

一. 两个案例 1)几何平均数计算:基金年平均增长率计算 在财务、投资和银行业的问题中,几何平均数的应用尤为常见,当你任何时候想确定过去几个连续时期的平均变化率时,都能应用几何平均数。其他通常的应用包括物种总体…

《HCIP-openEuler实验指导手册》1.2Apache主页面配置

知识点 一、配置服务器监听IP及端口 注释主配置文件“监听IP及端口”部分 cd /etc/httpd/conf cp httpd.conf httpd.conf.bak vim httpd.conf可以在普通模式下搜索Listen关键字 :/Listen按n键继续向后搜索 在/etc/httpd/conf.d中新建子配置文件port.conf: tou…

FPGA秋招-笔记整理(3)无符号数、有符号数

参考:Verilog学习笔记——有符号数的乘法和加法 一、无符号数、有符号数 将输入输出全部定义为有符号数 (1)无符号数的读取按照原码进行,有符号数的读取应该按照补码读取,计算规则为去掉符号位后取反、加1在计算数值…

84.柱形图中最大的矩阵

二刷终于能过了. 思路解析: 不愧是hard,第一步就很难想, 对于每一个矩阵,我们要想清楚怎么拿到最大矩阵, 对于每个height[i],我们需要找到left和right,left是i左边第一个小于height[i]的,right是右边第一个小于height[i]的,那么他的最大矩阵就是height[i] * (right-left-…