首页 > 其他分享 >简单理解:C语言中的分支和循环语句

简单理解:C语言中的分支和循环语句

时间:2023-07-24 17:04:32浏览次数:137  
标签:语句 执行 else break while 循环 C语言 分支

一、C语言中的循环语句

while 循环

while(//条件语句)
{
  //语句块
}

执行的逻辑:在执行到while()这一行时,会根据条件语句的真和假来判断是否继续进行循环,若条件语句为真则继续循环,如果条件为假则结束循环。

do while循环

do
{
//语句块
}
while(条件语句);

执行的逻辑:和while类似,但是要注意,这个循环内的语句至少do一次,而上面的while如果不满足条件语句则可以一次都不执行。

for 循环

for(语句块1;判断条件;语句块3)
{
	语句块2;
}

执行的逻辑:通俗地理解,语句块2插到判断条件和语句块3之间,看做插入后for()括号内从左到右执行,而第二次的时候,跳过语句块1,直接到判断条件的部分,如果为真,则继续执行,如果为假则退出循环。

以上就是常见的三种循环语句的写法,可以试着自己写一个简单的流程图方便理解。

二、给循环加点料:break 和 continue 的使用

下面以while循环为例:

while(//条件语句)

{

  //语句块1
  break;
  //语句块2
  break;

}

此处break的效果为跳出循环,何为跳出循环,在循环内,执行到break语句,会直接跳出循环体,语句块二将不会被执行,后面的一个break也不会执行。

而continue语句是跳回到循环的while语句刚开始执行的部分,即条件语句,再次判断条件,开始新的一次循环,也就是说在上一次循环中,continue语句以后的语句将不会被执行,continu和break语句的执行方向“分道扬镳”了。

三、分支语句

常见的分支语句

多if语句:

if(条件语句1)
{
  语句块1
}
if(条件语句2)
{
  语句块2
}

执行的逻辑:如果if()括号内的条件语句为真,则进入对应的语句块,不满足就直接跳过,执行后面的代码。

if else 语句

执行的逻辑:与上一个不同的是,此处的分支具有互斥性,进入了某一个分支就不会进入其他分支。

if(条件语句1)
{
  语句块1
}
else if(条件语句2)
{
  语句块2
}
else
{
  语句块3
}   

此处的else怎么理解呢?else可以看成是帮前面的if    else if语句 “擦屁股”,前面的都没进去,else内的语句会执行。

注意,if else语句中可以不包含else if语句。

下一篇文章我将写关于分支语句在循环语句中的应用,让循环语句更灵活。

标签:语句,执行,else,break,while,循环,C语言,分支
From: https://blog.51cto.com/u_16194134/6836779

相关文章

  • idea解析sql语句报错:Unable to resolve column 'uname'
    1.如题2.解决办法......
  • C语言指针的常见问题
    1值传递下面看一个列子,student结构体中包含该学生的各种信息,我们在change函数中对其进行部分修改,再在主函数中输出其结果#include<stdio.h>#include<string.h>#defineformat"%d\n%s\n%f\n%f\n%f\n"structstudent{intnum;charname[20];floatscore[3]......
  • C语言模拟银行排队叫号系统(链队)
    一.队列队列是一种具有先进先出(FIFO)特性的线性数据结构,它只允许在队列的两端进行插入和删除操作。队列的一端称为队尾(rear),另一端称为队头(front)。新元素总是插入在队列的队尾,而从队列中删除元素时则总是删除队头元素。由于队列具有FIFO特性,因此队列通常用于需要按照顺序处理数据的场......
  • 1.2 分支结构 参考代码
    P5709[深基2.习6]ApplesPrologue/苹果和虫子#include<cstdio>#include<algorithm>usingnamespacestd;intmain(){intm,t,s,ans;scanf("%d%d%d",&m,&t,&s);if(t==0)ans=0;elseans=m-(s+t-1......
  • 初始C语言
    基本了解C语言的基础知识,对C语言有个初步的认识。C语言是什么?人与人之间的交流使用的是自然语言。如汉语,英语,日语。人与计算机是怎么交流的呢?使用计算机语言。目前已知已经有上千种计算机语言。人们是通过计算机语言写的程序,给计算机工作的。C语言是一门通用的计算机编程语......
  • MySQL 高级 SQL 语句
    目录一、常用查询1.按关键字进行排序2.区间判断及查询不重复记录3.嵌套多条件查询4.查询不重复记录二、对结果进行分组三、限制结果条目四、设置别名五、通配符六、子查询七、视图八、NULL空值九、连接查询1.内连接2.左连接3.右连接十、存储过程1.概念2.简介3.优点4.......
  • sql server sql语句例题
    SQLServerSQL语句例题实现流程1.简介在学习和使用SQLServer数据库时,编写SQL语句是必不可少的一项技能。本文将指导你如何实现SQLServerSQL语句的例题。下面是整个流程的步骤概览:步骤操作1创建数据库2创建表3插入数据4查询数据5更新数据6删......
  • C语言的一些不常用的编译知识
    1.__stringifyLinux内核中有如下两个宏:#define__stringify_1(x...)#x#define__stringify(x...)__stringify_1(x)作用:会将x替换成()里面的内容。2.GCC__attribute__使用__attribute__((used)):表示对于这个函数可能不会调用它、可能用不到它,编译器不用进行warning提......
  • C语言数据类型和变量
    一.数据类型介绍1.概念所谓类型,就是相似的数据所拥有的共同特征,编译器只有知道了数据的类型,才能知道如何操作数据。2.数据类型分类**内置类型:字符,整型,浮点型,布尔类型自定义类型:数组,结构体-struct,枚举-enum,联合体-union**(自己创造类型)a.字符类型char[signed]char-有符号的charunsi......
  • c语言当中的COORD ,GetStdHandle(),SetConsoleCursorPosition(),以及避免清屏和反复刷新
    这是WindowsAPI定义的结构体类型COORD来表示字符在控制台屏幕上的坐标,结构体类型COORD定义为:typedefstruct_COORD{SHORTx;SHORTy;}COORD;使用WindowsAPI GetStdHandle()从一个特定的标准设备获取表示设备的句柄(用来标识不同设备的一个数值),SetConsoleCursor......