前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C语言编程中复杂的循环结构,你被循环晕了吗?

C语言编程中复杂的循环结构,你被循环晕了吗?

原创
作者头像
猫咪爱分享
发布2018-08-07 17:28:41
1.6K0
发布2018-08-07 17:28:41
举报

当一段代码需要执行多次时,您可能会遇到这种情况。通常,语句按顺序执行:首先执行函数中的第一个语句,然后执行第二个语句,依此类推。

编程语言提供各种控制结构,允许更复杂的执行路径。

循环语句允许我们多次执行语句或语句组。下面给出的是大多数编程语言中循环语句的一般形式

C编程语言提供以下类型的循环来处理循环要求。

1. while循环

2. For循环

3. Do...while循环

4. 嵌套循环

而在C语言编程循环,只要给定的条件为真,重复执行一个目标语句。

语法

C编程语言中while循环的语法是 -

while(condition) {

statement(s);

}

这里,语句可以是单个语句或语句块。所述条件可以是任何表达,和真正的是任何非零值。当条件为真时,循环迭代。

当条件变为假时,程序控制传递到紧接循环之后的行。小编给大家推荐一个学习氛围超好的地方,C/C++交流企鹅裙:【 六二七,零一二,四六四 】适合在校大学生,小白,想转行,想通过这个找工作的加入。裙里有大量学习资料,有大神解答交流问题,每晚都有免费的直播课程

在这里,要注意的关键点是while循环可能根本不执行。当测试条件并且结果为假时,将跳过循环体并且将执行while循环之后的第一个语句。

#include

int main {

/*localvariable definition */

int a = 10;

/* while loop execution */

while( a < 20 ) {

printf("value of a: %d ", a);

a++;

}

return 0;}

C编程语言中for循环的语法是 -

for ( init; condition;increment) {

statement(s);

}

以下是'for'循环中的控制流程

l 所述初始化步骤首先被执行,并且只有一次。此步骤允许您声明和初始化任何循环控制变量。只要出现分号,就不需要在此处输入声明。

l 接下来,评估条件。如果为真,则执行循环体。如果为false,则循环体不执行,控制流在'for'循环之后跳转到下一个语句。

l 在执行'for'循环的主体之后,控制流会跳回到增量语句。此语句允许您更新任何循环控制变量。只要在条件之后出现分号,此语句就可以留空。

l 现在再次评估该条件。如果为真,则循环执行并且过程自身重复(循环体,然后递增步骤,然后再次调节)。条件变为false后,'for'循环终止。

#include

int main {

int a;

/* for loop execution */

for( a = 10; a < 20; a = a + 1 )

{

printf("value of a: %d ", a);

}

return 0;

}

C编程语言中do ... while循环的语法是 -

do {

statement(s);

} while( condition );

请注意,条件表达式出现在循环的末尾,因此循环中的语句在测试条件之前执行一次。

如果条件为真,则控制流跳回来执行,循环中的语句再次执行。重复此过程直到给定条件变为假。

#include

int main {

/*localvariable definition */

int a = 10;

/* do loop execution */

do {

printf("value of a: %d ", a);

a = a + 1;

}while( a < 20 );

return 0;

}

循环控制语句

循环控制语句将执行从其正常序列更改。当执行离开作用域时,将销毁在该作用域中创建的所有自动对象。

C支持以下控制语句(自行学习,不做展示)

1. break;

2. continue

3. goto

无限循环

如果条件永远不会变为假,则循环变为无限循环。该用于循环传统上用于此目的。由于不需要构成'for'循环的三个表达式,因此可以通过将条件表达式留空来创建无限循环。

#include

int main {

for( ; ; ) {

printf("This loop will run forever. ");

}

return 0;}

当条件表达式不存在时,假定为真。您可能有一个初始化和增量表达式,但C程序员更常使用for(;;)构造来表示无限循环。(其他死循环不做讲解,自行补充)

我有一个微信公众号,经常会分享一些C语言/C++技术相关的干货;如果你喜欢我的分享,可以用微信搜索“C语言学习部落”关注,欢迎大家加入千人交流答疑裙:627+012+464

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云直播
云直播(Cloud Streaming Services,CSS)为您提供极速、稳定、专业的云端直播处理服务,根据业务的不同直播场景需求,云直播提供了标准直播、快直播、云导播台三种服务,分别针对大规模实时观看、超低延时直播、便捷云端导播的场景,配合腾讯云视立方·直播 SDK,为您提供一站式的音视频直播解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档