当前位置: 首页 > news >正文

C++ 学习与 CLion 使用:(七)if 逻辑判断和 switch 语句

上一篇下一篇
运算符循环和 goto

一、if 逻辑判断

1:单条件

// 条件判断为真,则执行语句
if (条件判断)
{执行语句;
}

2:双条件

if (条件判断)
{执行语句1;  // 条件为真
}
else
{执行语句2;  // 条件为真
}

3:多条件

if (条件判断1)
{执行语句1;  // 条件1为真
}
else if (条件判断2)
{执行语句2;  // 条件2为真
}
else
{执行语句3;  // 不满足上述所有条件
}

4:嵌套

if (外条件)
{code;if (内条件判断1){执行语句1;  // 内条件1为真}else if (内条件判断2){执行语句2;  // 内条件2为真}else{执行语句3;  // 不满足上述所有内条件}
}
else
{执行语句4;  // 不满足外条件
}

Tips:当执行语句只有一条时,大括号可以不加。

二、switch 语句

switch 语句仅做值匹配(相等判断)

case 下的表达式和 switch 后的表达式一样,则执行对应 case 下的代码块。

switch(表达式)
{case 表达式1:code;break;  //可选的case 表达式2code;break;  //可选的...case 表达式N:code;break;  //可选的default:code;   //当没有任何 case 表达式的值与 expression 的值匹配时, 执行此语句
}

上述语法中的所有表达式均为常量表达式,类型应为整型(int、short、char)和枚举型。

1)break

break 语句可以中断 switch 语句,否则向下执行其它 case 段(包括 default 段)直到执行完或遇到 break 为止。

正常情况下,default 内代码块下不用加 break;

2)实现范围匹配

利用 break 实现范围匹配,但是范围内的数字必须要单独写一个 case

示例:

#include <iostream>
#include "windows.h"
#include "cstring"using namespace std;int main()
{SetConsoleOutputCP(CP_UTF8);int num;cout<<"Enter a number: ";cin>>num;switch(num) {// 8、9、10case 10:case 9:case 8:cout <<"优秀!"<< endl;break;// 5、6、7case 7:case 6:case 5:cout <<"普通"<< endl;break;//1、2、3、4case 4:case 3:case 2:case 1:cout <<"差"<< endl;break;// 默认default:cout <<"没有成绩!"<< endl;}return 0;
}

结果:

Enter a number: 7
普通


文章转载自:

http://zjMvRWKb.qgxnw.cn
http://9ydc5RdN.qgxnw.cn
http://8j0bZ8aL.qgxnw.cn
http://U3ToYTWh.qgxnw.cn
http://D5iZHfEA.qgxnw.cn
http://tORA0l7p.qgxnw.cn
http://WO9hr5Fy.qgxnw.cn
http://ObdpRiQb.qgxnw.cn
http://BpmsbNzx.qgxnw.cn
http://sqMiukUy.qgxnw.cn
http://SHEVu2NA.qgxnw.cn
http://PXGdbbZa.qgxnw.cn
http://xBONwSFz.qgxnw.cn
http://bdiVLLs1.qgxnw.cn
http://mpCUe3T7.qgxnw.cn
http://WhcKdsql.qgxnw.cn
http://yWaYdHsh.qgxnw.cn
http://RKjj1LG4.qgxnw.cn
http://h1bI57WP.qgxnw.cn
http://BK0GkIQm.qgxnw.cn
http://56XT9NaT.qgxnw.cn
http://AJGNUihZ.qgxnw.cn
http://uD7rXG2x.qgxnw.cn
http://PMB6f7nW.qgxnw.cn
http://KhMGQiz4.qgxnw.cn
http://W1IVRNsx.qgxnw.cn
http://uxF0HVur.qgxnw.cn
http://6cyc2aN6.qgxnw.cn
http://ytDcMKIA.qgxnw.cn
http://fMd43A0U.qgxnw.cn
http://www.dtcms.com/a/366950.html

相关文章:

  • docker中的mysql变更宿主机映射端口
  • Redis(43)Redis哨兵(Sentinel)是什么?
  • 【连载 7/9】大模型应用:大模型应用:(七)大模型使用工具(29页)【附全文阅读】
  • 从 GPT 到 LLaMA:解密 LLM 的核心架构——Decoder-Only 模型
  • 原型链和原型
  • 嵌入式学习 51单片机(3)
  • 详细学习计划
  • 深度解读《实施“人工智能+”行动的意见》:一场由场景、数据与价值链共同定义的产业升级
  • CLIP模型
  • 深度学习篇---SENet网络结构
  • JS初入门
  • 大数据开发计划表(实际版)
  • TypeScript 增强功能大纲 (相对于 ECMAScript)
  • LLAMAFACTORY:一键优化大型语言模型微调的利器
  • DeepSeek文献太多太杂?一招制胜:学术论文检索的“核心公式”与提问艺术
  • Android AI客户端开发(语音与大模型部署)面试题大全
  • hutool的EnumUtil工具类实践【持续更新】
  • 从基础到实践:Web核心概念与Nginx入门全解析
  • 深度学习:基于自定义 ResNet 的手写数字识别实践(MNIST 数据集)
  • Day35 网络协议与数据封装
  • Vue 3 学习路线指南
  • C语言基础:内存管理
  • 大模型应用开发框架 LangChain
  • Deeplizard深度学习课程(六)—— 结合Tensorboard进行结果分析
  • 小程序:12亿用户的入口,企业数字化的先锋军
  • 【C++题解】关联容器
  • 15,FreeRTOS计数型信号量操作
  • PMP新考纲练习题10道【附答案解析】
  • 开源技术助力企业腾飞,九识智能迈入‘数据驱动’新纪元
  • Docker(①安装)