专栏首页C语言C++游戏编程C语言编程中复杂的循环结构,你被循环晕了吗?
原创

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

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

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

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

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

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

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 因为有你,所以出彩!C语言编程中不可或缺的条件判断和循环

    在编程语言中,判断和循环可以说是最重要的之一,正因为实现了它们的功能,才能够有如今各种各样功能的程序。今天小编带大家来了解一些条件判断和循环的知识。

    猫咪爱分享
  • C语言C++学到什么程度可以写游戏辅助?

    如果你不具有上面的条件,还是先把基础打好,再来写外挂吧,一分耕耘,一分收获,天下没有白掉的馅饼的

    猫咪爱分享
  • 400行代码编C语言控制台界版2048游戏,编写疯子一样的C语言代码

    《2048》是最近比较流行的一款数字游戏。原版2048首先在github上发布,原作者是Gabriele Cirulli。它是基于《1024》和《小3传奇》(T...

    猫咪爱分享
  • java基础学习_基础语法(上)03_day04总结

    ============================================================================= ==...

    黑泽君
  • python生成式

    本篇将介绍Python的列表生成式,更多内容请参考:Python列表生成式 列表生成式即List Comprehensions,是Python内置的非常简...

    用户1174963
  • Python 列表生成式

    >>> [x * xfor x in range(1, 6)]       --列表生成式

    py3study
  • 第九节 Go语言循环语句

    干货来了!!!为了让更多的小伙伴喜欢Golang、加入Golang之中来,Golang语言社区发起人彬哥联合业界大牛共同推出了Go语言基础、进阶、提高课程,目前...

    李海彬
  • Python代码性能优化

    在python2中,range的实现方式是直接在内存中开辟一个静态的数组,而xrange则是通过迭代的方式动态的去生成,所以显而易见,在需要的数据量特别大的时候...

    py3study
  • Django中的url与视图详解(2)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    xbhog
  • laravel中csrf验证详解

    laravel默认开启了csrf验证,当form表单提交数据时须带上csrf的token值,校验不通过就返回419错误

    章鱼喵

扫码关注云+社区

领取腾讯云代金券