【C语言】(9)分支结构

一.if-else 语句

if-else 适用于简单和复杂的条件判断。

a. 基本 if 语句

  • 用途:基本的条件测试。
  • 语法
    if (condition) {// 代码块
    }
    
  • 示例
    if (score > 60) {printf("及格\n");
    }
    

b. if-else 语句

  • 用途:二选一的条件判断。
  • 语法
    if (condition) {// 条件为真时的代码
    } else {// 条件为假时的代码
    }
    
  • 示例
    if (age >= 18) {printf("成年\n");
    } else {printf("未成年\n");
    }
    

c. if-else if-else 语句

  • 用途:处理多个条件。
  • 语法
    if (condition1) {// 第一个条件的代码
    } else if (condition2) {// 第二个条件的代码
    } else {// 所有条件都不满足时的代码
    }
    
  • 示例
    if (score >= 90) {printf("优秀\n");
    } else if (score >= 60) {printf("及格\n");
    } else {printf("不及格\n");
    }
    

d. 嵌套 if 语句

  • 用途:处理更复杂的条件。
  • 语法
    if (condition1) {if (condition2) {// 条件1和条件2都满足时的代码}
    }
    
  • 示例
    if (isLoggedIn) {if (userRole == "admin") {printf("管理员登录\n");}
    }
    

二.switch 语句

switch 适用于多选一的情况,尤其是一个变量有多个特定值的情况。

a. 基本 switch 语句

  • 用途:基于单个变量的多值判断。
  • 语法
    switch (variable) {case value1:// value1 对应的代码break;case value2:// value2 对应的代码break;// 更多 casedefault:// 没有匹配 case 时的代码
    }
    
  • 示例
    switch (grade) {case 'A':printf("优秀\n");break;case 'B':printf("良好\n");break;default:printf("其他\n");
    }
    

b. switch-case 的组合

  • 用途:处理相同代码块的多个 case 值。
  • 语法
    switch (variable) {case value1:case value2:// value1 和 value2 的共享代码break;// 更多 case
    }
    
  • 示例
    switch (dayOfWeek) {case 1:case 7:printf("周末\n");break;default:printf("工作日\n");
    }
    

c. switch 的默认情况

  • 用途:处理未列出的其他情况。
  • 语法
    switch (variable) {// case 分支default:// 默认代码块
    }
    
  • 示例
    switch (direction) {case 'N':printf("北\n");break;default:printf("未知方向\n");
    }
    

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

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

相关文章

基础小白快速学习c语言 ---c语言的简单介绍

c语言是由一个或者多个函数组成的,函数是由语句组成的,语句要用;结束 c语言开发过程: 1 创建一个源程序 2 预处理并且编程 c语言中的标准输入和标准输出 标准输出:printf printf是c语言标准库中提供的一个函数&…

有哪些原型图设计工具是你应该熟悉的?

今天我们将介绍 5 优秀的原型设计工具及其功能。每个软件都有不同的平台和价格范围。相信你能找到最适合你的原型工具! 1、Sketch 以友好的用户而闻名 Sketch,对于设计师来说,有很多实用的功能。这个软件在图形编辑方面很受欢迎,…

【Django开发】前后端分离美多商城项目:项目准备和搭建(附代码,文档)

本系列文章md笔记(已分享)主要讨论django商城项目开发相关知识。本项目利用Django框架开发一套前后端不分离的商城项目(4.0版本)含代码和文档。功能包括前后端不分离,方便SEO。采用Django Jinja2模板引擎 Vue.js实现…

【webrtc】m98 : vs2019 直接构建webrtc及moduletest工程 2

字数有限制,我们继续 【webrtc】m98 : vs2019 直接构建webrtc及unitest工程 1modules_unittests 构建 Build started... 1>------ Build started: Project: modules_unittests, Configuration: GN Win32 ------ 1>ninja: Entering directory `G:\CDN\rtcCli\m98\src\o…

linux centos 查看端口是否打开与打开端口

查看端口是否打开 talnet talnet ip 端口linux查看防火墙开放情况 firewall-cmd --list-all打开端口 其中permanent表示永久生效,public表示作用域,443/tcp表示端口和类型,执行规则的重载 firewall-cmd --zonepublic --add-port443/tcp …

VitePress-04-文档中的表情符号的使用

说明 vitepress 的文档中是支持使用表情符号的,像 😂 等常用的表情都是支持的。 本文就来介绍它的使用方式。 使用语法 语法 : :表情名称: 例如 : :joy: 😂 使用案例代码 # 体会【表情】的基本使用 > hello world …

Netty的高级用法(一)

前言 我们直到在网络通信中客户端和服务端之间除了要传输数据外,还会进行简单的心跳应答通信,使得客户端和服务端的连接处于一种活跃状态,那么客户端可以发送ONE_WAY和TWO_WAY两种方式的处理,而服务端在处理这两种类型的数据时会…

全民拼购模式深度解析:理解如何叫成败皆得利

每天五分钟讲解一个商业模式,大家好我是啊浩说模式Zeropan_HH 欢迎来到全民拼购模式的奇妙世界!今天,我将带领大家深入了解这个在互联网上热度正旺的商业模式,同时分享如何在这个模式中的参与和获益。 近年来,随着社交…

4核16G幻兽帕鲁服务器优惠价格表,阿里云和腾讯云报价

幻兽帕鲁服务器价格多少钱?4核16G服务器Palworld官方推荐配置,阿里云4核16G服务器32元1个月、96元3个月,腾讯云幻兽帕鲁服务器服务器4核16G14M带宽66元一个月、277元3个月,8核32G22M配置115元1个月、345元3个月,16核64…

构建知识图谱:从技术到实战的完整指南

目录 一、概述二、知识图谱的基础理论定义与分类核心组成历史与发展 三、知识获取与预处理数据源选择数据清洗实体识别 四、知识表示方法知识表示模型RDFOWL属性图模型 本体构建关系提取与表示 五、知识图谱构建技术图数据库选择Neo4jArangoDB 构建流程数据预处理实体关系识别图…

matlab窗函数-hann窗和hamming窗函数

窗函数的作用 在时域上,窗函数可以看作是对原始信号进行截断或调制的加权函数。这些窗函数通常在时域上是有限的宽度,并且具有对称性,如矩形窗、汉宁窗、汉明窗和布莱克曼窗等。例如,汉明窗是一种对称窗函数,它可以用…

oracle分区范围修改与数据迁移处理

背景 由于对应用上线后流量越来越大,原来的按年自动分区性能跟不上,因此决定改成按月自动分区,同时将原有分区数据重新迁移到新的分区 步骤 修改表分区为一个月一个分区 alter table my_table set INTERVAL (NUMTOYMINTERVAL(1, month));…

联想懂的通信×实在智能:共同探索智连融合AI创新发展路径

近日,联想集团副总裁/联想懂的通信CEO王帅、CFO周利军、COO&CPO邢海洋、CGO赵晨、CTO边毅等领导一行莅临杭州实在智能科技有限公司开展研讨座谈。 实在智能创始人&CEO孙林君、联合创始人&COO高扬、联合创始人&CMO张俊九、销售VP&运营商事业线负…

测试开发之路--Flask 之旅 (三):数据库

背景 通过前两次的努力,我们对环境有了增删查改以及部署和查看日志的能力。 现在已经处于将就可用的状态。但其实还差了很重要的东西,就是权限的管理。 因为不能说每个用户上来都能随便的重启和删除环境吧,太容易出事故了。所以我们想起码有…

堆和堆排序【数据结构】

目录 一、堆1. 堆的存储定义2. 初始化堆3. 销毁堆4. 堆的插入向上调整算法 5. 堆的删除向下调整算法 6. 获取堆顶数据7. 获取堆的数据个数8. 堆的判空 二、Gif演示三、 堆排序1. 堆排序(1) 建大堆(2) 排序 2.Topk问题 四、完整代码1.堆的代码Heap.cHeap.htest.c 2. 堆排序的代码…

Spring中用Mybatis注解查询映射多个对象

1.映射写法如下 SelectProvider(type UserGroupMapper.class, method "getOrigins")Results({Result(property "id", column "id"),Result(property "groupId", column "groupId"),Result(property "resId&qu…

std::set自定义比较器

set的比较器可用于&#xff0c;insert(),count(),find()等函数 如下&#xff1a; 1. 使用lamda表达式 auto cmp [](int a, int b) { return … }; std::set<int, decltype(cmp)> s(cmp); 2. 结构体的重载操作符&#xff08;&#xff09; 3. 使用普通函数作为比较器

设计模式之设计原则

单一职责原则 SRP 一个类或者模块只负责完成一种职责 现在微服务还有模块的分层 就是基于这个原则 单一职责&#xff0c;我个人认为单一职责是一个分工合作&#xff0c;对于模块来说做的更精准不需要考虑其他的模块的信息&#xff0c;做到了一个模块小而精&#xff0c;对于整理…

排序(2)——选择排序

三、选择排序 1.简介 选择排序主要采取的排序策略就是选择&#xff0c;在拿到待排序数组后&#xff0c;程序会一遍遍地遍历未排序部分数组&#xff0c;在每一次的遍历过程中会找到最小的元素&#xff0c;并在遍历完成后换到未排序数组部分的最左侧。如此循环往复&#xff0c;每…

Qt QPlainTextEdit高亮显示当前行

Qt QPlainTextEdit高亮显示当前行 文章目录 Qt QPlainTextEdit高亮显示当前行摘要错误的代码正确的代码QTextEdit::ExtraSelection 关键字&#xff1a; Qt、 QPlainTextEdit、 QTextBlock、 ExtraSelection、 GPT 摘要 今天要在说一下GPT&#xff0c;当下如果你还不会用G…