首页 > 编程语言 >10C++选择结构(4)——教学

10C++选择结构(4)——教学

时间:2024-11-29 15:35:22浏览次数:11  
标签:case 10 C++ 教学 break 语句 switch score 表达式

一、switch语句

(第25课 成绩等级)

问题:风之巅小学规定,若测试成绩大于或等于90分为“A”,大于或等于70分小于90分为“B”,大于或等于60分小于70分为“C”,60分以下为“D”。试编一程序,输入一个成绩,输出它的等级。
流程图如下:

用if语句处理多个分支时需使用if-else-if结构,分支越多,嵌套的if语句层就越多,程序不但庞大而且理解也比较困难。

C++提供了一个专门用于处理多分支结构的条件选择语句,称为switch语句,又称开关语句。它可以方便地实现深层嵌套的if-else逻辑。

switch语句一般使用如下格式:
switch (表达式)
{
case 常量表达式1:语句1;break;
case 常量表达式2:语句2;break;
..........
case 常量表达式n:语句n;break;
default:语句n+1;break;
}

先计算switch表达式的值,当表达式的值与某一个case子句中的常量表达式相匹配时,就执行此case子句中的内嵌语句,并顺序执行之后的所有语句,直到遇到break语句为止;若所有的case子句中常量表达式的值都不能与switch表达式的值相匹配,就执行default子句的内嵌语句。switch后面括号内的表达式,可以是整型、字符型、布尔型。每一个case 表达式的值必须互不相同,否则就会出现互相矛盾的现象。若各个case和default子句中都有break语句,则他们的出现次序不影响执行结果;case子句中可以包含多个执行的语句,不必用花括号括起来。
成绩等级程序可以用分支switch语句来编写,流程图如:

#include <typeinfo>    //变量类型头文件,还是有问题;无法判断int
#include <iostream>    //包含输入输出流头文件iostream
using namespace std;    //指明程序 使用命名空间std(标准)
int main()
{
    int n;
    char score;
    cout<<"请输入分数:";
    cin>>n;
    switch (n/10)    //n、10是整型,n/10也是整型
    {
        case 10:
        case 9:
            score='A';break;
        case 8:
        case 7:
            score='B';break;
        case 6:
            score='C';break;
        case 5:
        case 4:
        case 3:
        case 2:
        case 1:
        case 0:
            score='D';break;
        default:
            score='32';break;    //一个空格赋值给score
    }
    cout<<score;
    return 0;
 }

英汉小词典:
switch 条件选择;开关
case 情况
break 终止
default 默认;系统默认值

二、switch语句的应用

(第26课 王宅六味)
例程:给“王宅六味”按1~6编号,试编一个菜名查询程序,输入编号输出菜名。(浙江省金华市的王宅,有着源远流长的农耕文化,也有着令人垂涎的美味,
其中“寿仙菇、酒糟芋、下山笋、太师豆腐、 孝子鱼、猪全福” 流传最久最广,称为“王宅六味”。)

三目运算符

三目运算符(也称为条件运算符)在C++中的一般形式是:
condition ? expr1 : expr2;
其中condition是一个返回布尔值的表达式,expr1和expr2可以是任意表达式。如果condition为真,则执行expr1,否则执行expr2。
下面是一个使用三元运算符的简单例子:

#include <iostream>
int main() {
    int a = 10;
    int b = 20;
    int max = (a > b) ? a : b;
    std::cout << "Max value is: " << max << std::endl;
    return 0;
}

标签:case,10,C++,教学,break,语句,switch,score,表达式
From: https://www.cnblogs.com/citStudy/p/18576838

相关文章

  • [2106]基于JAVA的渔具进销存智慧管理系统的设计与实现
    毕业设计(论文)开题报告表姓名学院专业班级题目基于JAVA的渔具进销存智慧管理系统的设计与实现指导老师(一)选题的背景和意义开题报告背景与意义:在当前数字化经济时代背景下,各行各业的经营管理活动都在向信息化、智能化转变,以提高效率、降低成本、增强决策科学性。渔具行......
  • Springboot高职院校实践教学与就业跟踪085m6(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表学生,企业,企业信息,招聘信息,应聘信息,实习实践,问卷调查,学生答卷开题报告内容一、研究背景与意义随着我国经济的快速发展和产业结构的不断优化升级,高等职业......
  • hhdb数据库介绍(10-14)
    配置配置校验配置校验主要为计算节点相关配置提供校验功能,防止人为错误设置或线下修改计算节点相关配置导致运行异常等问题出现。容灾模式说明:集群开启容灾模式时,配置校验相关逻辑说明请结合跨机房容灾部署文档中的配置校验章节。功能入口:在关系集群数据库可视化管理平台页面......
  • hhdb数据库介绍(10-15)
    配置集群元数据备份还原集群元数据指的是计算节点配置库数据与配置文件。管理平台提供为计算节点手动或定时备份元数据的功能,以防重要配置数据丢失或损坏导致无法恢复。集群元数据备份手动备份远程备份为提高备份的元数据的安全性,本功能还提供将备份的元数据同时拷贝到......
  • hhdb数据库介绍(10-17)
    配置服务器服务器菜单可配置集群中所有服务器的SSH信息,方便管理平台对服务器进行各种状态监控。此外也支持添加集群外的服务器到管理平台中进行监控。自动获取服务器IP服务器页面会自动显示集群内所有的服务器IP以及服务器中关联的服务程序。单节点集群模式管理平台自动获取......
  • hhdb数据库介绍(10-16)
    配置存储节点参数存储节点参数通过可视化方式将部分无需重启的参数展示在管理平台上,方便运维人员进行管理。目前支持存储节点实例和计算节点配置库实例的参数管理。参数列表参数列表展示存储节点信息、版本信息、参数名称、参数当前值、参数默认值、参数有效值范围、参数生效......
  • C++练级计划->《右值引用和移动语义》
    目录什么是左值右值?什么是左值?什么是右值?左值引用和右值引用左值引用右值引用右值引用使用场景和意义使用场景:左值引用的短板右值引用和移动语义:移动构造:右值引用的使用场景+1:完美转发万能引用什么是左值右值?什么是左值?左值是一个有具体地址的值。左值可......
  • C++关于二叉树的具体实现
    目录1.二叉树的结构2.创建一棵二叉树3.二叉树的先序遍历1.借助栈的先序遍历2.利用递归的先序遍历4.二叉树的中序遍历5.二叉树的后序遍历1.借助栈的后序遍历2.利用递归的后序遍历6.二叉树的层序遍历7.tree.h8.tree.cpp9.main.cpp1.二叉树的结构对于二叉树来说......
  • hhdb数据库介绍(10-9)
    配置配置是管理平台为计算节点可视化配置所开发的功能,包括配置数据节点、存储节点、存储节点组、逻辑库、分片规则、表信息、数据库用户、计算节点等参数。同时配套设置了配置参数的校验与备份恢复的辅助功能。节点管理节点管理菜单主要为用户提供存储节点组、数据节点、存储节......
  • hhdb数据库介绍(10-8)
    首页管理平台通过数据可视方式在首页功能中实时展示计算节点集群的数据量、访问流量、集群组件状态、告警事件、安全防控等用户关心的信息。集群安全邮件通知:根据通知设置中监控开关是否打开判断,分为:全部开启、未开启、部分开启,点击跳转到通知设置页面系统定时检测:根据定时......