变量运用的进阶操作:分支判断与循环

本文详细介绍了C语言中的分支判断(if、elseif、switch)、循环结构(for、while、do...while以及break、continue、goto操作),强调了正确使用和注意事项。
摘要由CSDN通过智能技术生成

目录

一,分支判断

1,if 语句

1)使用方法

2)相关操作符

(1)关系操作符

(2)逻辑操作符

2,switch语句

二,循环结构

1,for循环

2,while循环

3,do...while 循环

4,跳出循环的操作

(1)break

(2)continue

(3)goto 语句


在了解变量的相关操作后,我们开始学习对变量的进阶操作。

一,分支判断

        在我们创建变量后,往往要判断其是否符合我们使用要求,此时分支判断应运而生;下面我们学习相关函数:

1,if 语句


1)使用方法

  if 在翻译为“是否,如果”,其使用方法如下:

if (判断表达式)
{
	运行语句;
}
else
{
    运行语句;
}

当 if 后括号内表达式成立(为真 或 非0)时,便进行大括号内的语句;否则(为假 或 为零)便跳过该语句,运行else后大括号中的语句。

        当我们需要多种情况的判断时,便可以用 else if();方法如下:


	if (判断表达式)
	{
		运行语句;
	}
	else if (判断表达式)
	{
		运行语句;
	}
	else
	{
		运行语句;
	}
	

当然,else if 可以多次使用,不过要注意判断条件不要重复了。

注意 :

  1. 如果 if 后面没加大括号,运行时仅会自动运行其后一行语句;因此要想要运行多项语句便要加上大括号;
  2. 当if 语句中还包括 if 语句时,对于 else 所对应的 if 的判断:口诀:就近原则,即 else 对应于其上最近的 if 。当然,对与一段优秀的代码,我们应当给每个 if 与 else 与 else if 的运行语句加上大括号,表示所属关系。

2)相关操作符

(1)关系操作符

        对于变量关系的判断有大于,小于,大于等于,等等;相关运算符如下:     

  • >  大于运算符
  • <  小于运算符
  • >=  大于等于运算符
  • <=  小于等于运算符
  • ==  相等运算符
  • !=  不相等运算符

关系表达式的结果通常返回 0或1,表示真假;在C语言中,0表示假,非0为真。

注意

  1. == 与 = 不可混淆,前者是相等运算符,而后者是赋值操作符;所以在实际编程中,切记不要遗漏==;
  2. 多个运算符不宜连用,如 3>a>1 ;这在编程中是不被允许的,这里会被看成3与a做比较,输出值为1或0,然后在用1或0与1进行比较,可能造成不必要的麻烦。故应当写成:a>1 && a<3 ,这里便涉及下面逻辑操作符。
(2)逻辑操作符

        逻辑运算符提供逻辑判断功能,用于构建更复杂的表达式,主要有以下三种。

  • ! 逻辑取反运算符,用于改变单个表达式的真假。
  • &&  与运算符,即并且的意思,两侧表达式都为真(都成立)时总体为真,否则为假(一假即假)。
  • ||  或运算符,或者的意思,当两侧表达式都为假时,总体为假,否则为真(一真即真)。

注意:

短路求值,众所周知,C语言中,一句代码的运行是从左到右的,那么在使用逻辑运算符时,如果左边表达式已经满足要求时,便不再会运行右边的表达式。

对于&& 与运算符,当左边表达式已经为假时,整个表达式已经假,那么此时右边表达式便不运行。同样的,对于|| 或运算符来说,如果左边表达式已经为真时,右边表达式便不再运行。

像这种仅仅根据左操作数的结果就知道整个表达式的结果,不在对右边操作数进行计算的运算称为短路求值。

扩展:条件操作符

形式如下:

表达式?表达式一:表达式二;

使用方法是:如果表达式成立(为真)即执行表达式一,否则执行表达式二。而执行表达式后,表达式的结果便是整个语句的结果。值得注意的是,使用时问号?与冒号:不要输入错误了。

2,switch语句

        在C语言中,分支判断选择除去 if 语句外,便剩下 switch 语句了。其相似于 if...else 结构,对于多分支判断更加方便。

形式如下:

switch (判断表达式)
{
case 结果一:表达式;
case 结果二:表达式;
default:表达式;
}

在使用中,如果判断表达式所得结果能对应 case 对应的结果,则运行相应表达式,否则运行default 后的表达式。

值得注意的是:

  • switch 后的判断表达式必须是整形表达式
  • case 后的结果必须是整形常量表达式

case后面数据类型:

  • 整型(int
  • 字符型(char
  • 枚举类型(enum
  • 符号整型(如 shortlonglong long

switch后面表达式类型:

  • 整型(intcharshortlonglong long
  • 枚举类型(enum
  • 字符型(char

注意

  • case 与后面的结果之间必须有空格
  • 每一个 case 语句中,需要加上 break用于跳出该switch语句,否则会执行其他case中的代码直到遇见 break(因题制宜) 。
  • 在一个 switch 语句中,case 与 default 位置无需在意上下,因为是对号入座(为了美观建议放在最下面)。

二,循环结构

循环结构分为三部分,for,while,do while,下面我们逐一进行讲解。

1,for循环

        在三种循环中,因其三个部分比较集中,故 for 循环是使用最多的一个,代码形式如下:

for (表达式一; 表达式二; 表达式三)
{
	循环语句;
}

其中,表达式一用于变量的初始化,表达式二用于判断是否执行循环语句,表达式三用于对循环变量的调整。执行流程是:

在整个过程中,初始化仅进行一次, 剩下的就是表达式二、三,和循环语句在循环。其实跳出循环的方式不止一种,本篇后讲。

2,while循环

        while 循环与 if 的语法结构比较接近,形式如下:

while (判断式)
{
	循环语句(内可含有变量的调整);
}

即当判断式为真时,执行下面的循环语句,否则便跳出循环。

3,do...while 循环

        其形式如下:

do
	循环语句;
while (判断式);

值得注意的是:不同于 for 与 while 的先判断后循环,do while 则是先进行一次循环在通过判断决定是否再次进行循环。

4,跳出循环的操作

        在循环过程中,如果某些情况发生的时候,我们需要提前终止循环,那么我们便可以使用以下三种方式。

(1)break

        break 用于永久的终止循环,及执行到break后,该循环便不会在运行,开始执行其后代码。

(2)continue

        continue 用于跳过单次循环,当其执行后其后的循环语句便不再执行,会直接运行到变量调整表达式或判断表达式。注意:continue的使用要恰当,不然任意造成死循环。

以下是常见情况:

(3)goto 语句

        C语言提供了一种非常特别的语法,就是  goto 语句与跳转标号,goto 语句能够实现在同一个函数内部跳转到设置好的标号处。

用法如下(用for语句举例):

for (表达式一; 表达式二; 表达式三)
{
	语句;
	goto next:
	语句;
next:
	语句;
}

值得注意的是:如果goto语句使用不当,就会导致在函数内部随意跳转,打乱程序的执行流程,建议是非必要不使用;但是goto语句的优点是:在多层循环中,可以快速跳出。

  • 17
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值