首页 > 其他分享 >C一直学 1.3

C一直学 1.3

时间:2024-10-26 16:21:24浏览次数:4  
标签:语句 case 1.3 else 运算符 switch 一直 表达式

 前言:又有了几天空余时间,趁着把笔记给打一下,明天再把循环打完接着鸽了

分支

C语言是结构化的程序设计语言,其结构指的是顺序结构、选择结构、循环结构

而我们通常使用 if switch 语句实现分支结构

1.if语句

其语法形式如下 

表达式成立(为真),则语句执行,表达式不成立(为假),则语句不执行

如下判断偶数,输入4表达式成立,语句执行,右图为非偶情况,语句不执行

 else

else可与if一起使用,组成if....else....语句,形式如下

if ( 表达式 )

         语句 1

else            

         语句2

那么就可以判断奇偶

在 if 和 else 语句中默认都只控制⼀条语句,若分支中包含多条语句,可使用{ }将代码括起来,else 后也可以跟上大括号

嵌套if

在if....else....语句中, else 可以与另⼀个 if 语句连用,构成多重判断

如上为两种判断方式

2.悬空else

如果有多个 if 和 else , else 总是跟最接近的 if 匹配,要适当带上{ }

关系操作符

C语言用于比较的表达式,称为“关系表达式”,里面使用的运算符就称 为“关系运算符”,以下列举一些重要运算符

> 大于运算符

< 小于运算符

>= 大于等于运算符

<= 小于等于运算符

== 相等运算符

!= 不相等运算符

关系表达式通常返回 0 或 1 ,表示真假,如2>1为真,返回1;4>8为假,返回0

关系表达式常用于 if 或 while 结构

注:1.相等运算符 == 与赋值运算符 = 是两个不⼀样的运算符,==是判断两个数是否相等,=通常为赋值

2.多个关系运算符不宜连用

条件操作符

条件操作符也叫三目操作符,需要接受三个操作数,形式如下

exp1 ? exp2 : exp3

上图为运用实例

逻辑操作符:!,&& , ||

1.逻辑取反运算符

!可使非0变0,0变1,也就是真变假,假变真,如下图,a通过逻辑取反!使0变为1,表达式成立,语句执行

2.逻辑与运算符&&

&&是并且的意思, && 是⼀个双目操作符,使用的方式是 exp1 && exp2 &&两边表达式都是真的时候,整个表达式才为真,只要有⼀个是假,则整个表达式为假

3.逻辑或运算符 ||

|| 或者的意思, || 也是⼀个双目操作符,使用的方式是 a || b || 两边的表达式只要有⼀个是真,整个表达式就是真,两边的表达式都为假的时候,才为假

短路

C语言逻辑运算符还有⼀个特点,它总是先对左侧的表达式求值,再对右边的表达式求值

 如果左边的表达式满足逻辑运算符的条件,就不再对右边的表达式求值。这种情况称为“短路”

对于&&操作符,左边操作数的结果是0的时候,右边操作数就不再执行

而  || 操作符的左操作数的结果不为0时,就无需执行右操作数

switch 语句

switch 语句是⼀种特殊形式的 if...else...结构,用于判断条件有多个结果的情况,形式如下

switch (exp)      

{                        

case value1:      

        statement;

break; 

case value2:      

         statement;

break;

 ...                       

default:               

           statement;  

break;

}                      

根据表达式exp不同值,执行相应的case分支,如果找不到对应的值,就执行 default 分支

注:1.exp必须是整形表达式

2.case 后的值,必须是整形常量表达式

3.case 和后边的数字之间必须有空格

1.break与default

switch语句中使用 break 才能在跳出 switch 语句,若个case语句的后边没有break,代码会继续往下执行,直到出现break停止

default:若switch后表达式的值与case后面值不匹配,可加入default来处理不匹配的值

在 switch 语句中,case 语句和 default 语句是没有顺序要求的

结束

标签:语句,case,1.3,else,运算符,switch,一直,表达式
From: https://blog.csdn.net/W260909_7418/article/details/143248362

相关文章

  • android studio浏览页面一直Initializing无法预览解决方案
    今天不知道为什么新建的项目出现了这样的情况。点了好几次gradle大象也没用。方法一(成功解决):清除项目配置和Gradle缓存删除配置文件:删除项目的配置信息和 .gradle 目录下的配置文件。重启开发工具:重新启动AndroidStudio。等待初始化:等待AndroidStudio完成初始......
  • 网关失效前端请求一直报404
    这个问题是网关什么的我都配置的对但是前端页面请求过来就直接报404问题原因全局过滤器的使用全局过滤器是作用于所有路由的过滤器,无需单独配置。在SpringCloudGateway中,全局过滤器可以用来实现一些统一化处理的业务需求,例如权限认证、IP访问限制等。然而,如果不正确使用全局......
  • C一直学 1.2.1
    scanf与printf注解(一)printf用法其作用是将参数文本输出到屏幕,由print(打印)以及f(format-格式化)组成,作为库函数需要对应的头文件<stdio.h> printf()打印时不会自动换行,运行结束后,光标就停留在输出结束的地⽅为了达到换行的目的我们可以使用转义字符\n 占位......
  • 植物大战僵尸融合版(2.1.3)
    与植物大战僵尸杂交版一样,融合版也是一个第三方修改版,基于经典游戏《植物大战僵尸》的创意改编版本。这个版本不仅保留了原作的核心玩法,还引入了许多新的元素和改进,为玩家带来了全新的游戏体验。v2.1.3【手机版注意】如果你是2.1及以前版本更新需要卸载旧版本重新安装更新内......
  • C# UDP通信 ReceiveAsync() 一直等待问题
    问题描述两个C#应用,一个作为服务端Server,另一个作为客户端Client,客户端打开一个Udp端口,循环接收数据;服务端开启后向客户端发送指令,当服务端出现异常时关闭了服务端的UdpClient,此时客户端卡死在_client.ReceiveAsync(),无法再接收到消息。客户端代码:try{varcts=newCanc......
  • Navicat Premium 17.1.3版本发布,原生支持华为云数据仓库GaussDB(DWS)
     近日,Navicat发布了一项重要更新,原生支持华为云数据仓库GaussDB(DWS)。这是Navicat支持的国内首个数据仓库产品,将为广大GaussDB(DWS)用户带来更多的便利。Navicat无缝对接GaussDB(DWS),让数据仓库的构建、查询、优化及维护变得更加直观和易于管理,助力企业轻松驾驭大数据时代的......
  • Apache DolphinScheduler-1.3.9源码分析(二)
    引言随着大数据的发展,任务调度系统成为了数据处理和管理中至关重要的部分。ApacheDolphinScheduler是一款优秀的开源分布式工作流调度平台,在大数据场景中得到广泛应用。在本文中,我们将对ApacheDolphinScheduler1.3.9版本的源码进行深入分析,主要分析一下Master和Worker的......
  • 31.3 患者记录管理
    31.3患者记录管理31.3患者记录管理31.3.1患者记录的重要性31.3.2数据收集31.3.3数据库设计31.3.4数据安全和隐私保护31.3.5数据分析和报告31.3.6技术解决方案31.3.7案例分析31.3.8结论31.3患者记录管理患者记录管理是医疗保健行业中的一个关键组成部......
  • Hive3.1.3 环境搭建之初始化数据到Oracle
    1、新建配置文件hive-site.xml<?xmlversion="1.0"encoding="UTF-8"standalone="no"?><?xml-stylesheettype="text/xsl"href="configuration.xsl"?><configuration><property> <name>jav......
  • iPhone开机一直白苹果闪烁,3个解决卡在开机画面的方法!
    很多苹果用户在网上反馈,某天iPhone开机一直卡在开机Apple标志画面,而且白苹果一直闪烁。 长按电源键也无法正常启动设备,黑屏后还是会出现苹果logo,一直闪烁。遇到iPhone开机一直白苹果闪烁的情况,多半是因为iOS系统故障。更专业的说,是系统组件调用执行失败而导致无法出现系统的......