C语言 --- 循环(2)
- 循环
- 含义
- 循环的基本组成部分
- for循环
- 含义
- 语法形式
- 执行流程图
- 代码示例
- 应用场景
- while循环
- 语法形式
- 执行流程图
- 代码示例
- 应用场景
- while和for循环的对比
- do - while循环
- 含义
- 语法形式
- 执行流程图
- 代码示例
- 应用场景
- for、while和do-while循环的使用次数比较
- 总结
💻作者简介:曾与你一样迷茫,现以经验助你入门 C 语言
💡个人主页:@笑口常开xpr的个人主页
📚系列专栏:C 启新程
✨代码趣语:学习 C 语言,就像学习拉丁文或希腊文,它会为你学习其他语言奠定坚实的基础。
💪代码千行,始于坚持,每日敲码,进阶编程之路。
在编程的世界里,每一行代码都可能隐藏着无限的可能性。你是否想过,一个小小的程序究竟能改变什么?它可以是解决复杂问题的工具,也可以是实现梦想的桥梁。在 C 语言编程中,循环结构是极为重要的编程工具之一。它允许我们重复执行特定的代码块,从而实现高效、灵活的程序逻辑。无论是处理大量数据、实现算法,还是进行用户交互,循环结构都发挥着不可或缺的作用。本文将详细介绍 C 语言中的三种主要循环结构:for 循环、while 循环和 do-while 循环,并通过实际的代码示例展示它们的使用方法。
循环
含义
循环是一种控制结构,它允许一段代码在满足特定条件的情况下被重复执行。
循环的基本组成部分
一个完整的循环通常包含以下四个关键部分:
初始化部分:这是循环开始前执行的操作,主要用于设置循环控制变量的初始值。
条件判断部分:每次循环开始前都会对这个条件进行检查。如果条件为真,则继续执行循环体中的代码;如果条件为假,则跳出循环,不再执行后续的循环操作。
循环体:这是循环中实际要重复执行的代码块。它可以包含各种语句,用于完成特定的任务。
迭代部分:在每次循环体执行完毕后,会执行迭代操作,通常是对循环控制变量进行更新。
for循环
含义
for 循环是一种在已知循环次数的情况下非常常用的循环结构。它将初始化、条件判断和迭代部分集中在一个语句中,语法结构清晰。
语法形式
for(表达式1; 表达式2; 表达式3)
{循环语句;
}
表达式1
表达式1为初始化部分,用于初始化循环变量的。
表达式2
表达式2为条件判断部分,用于判断循环时候终止。
表达式3
表达式3为调整部分,用于循环条件的调整。
执行流程图
流程图解释
开始:程序进入 for 循环的执行流程。
初始化部分:执行 for 循环中的初始化表达式,通常是对循环控制变量进行初始化。
条件判断:检查 for 循环中的条件表达式。如果条件为真(非零),则进入循环体执行代码;如果条件为假(零),则跳出循环,流程结束。
执行循环体:当条件判断为真时,执行 for 循环体中的代码。
迭代部分:执行 for 循环中的更新表达式,通常是对循环控制变量进行更新。
循环结束:当条件判断为假时,for 循环执行结束,程序继续执行后续代码。
注:for循环初始化之后进行判断,然后进入循环体,而不是初始化之后直接进入循环体,这是很多初学者容易忽略的问题,希望读者可以注意到。
代码示例
问题:在屏幕上输出1 - 10的数字,数字之间用空格隔开。
以for循环为例,下面展示
代码示例
。
#include<stdio.h>
int main()
{int i = 0;//定义ifor (i = 1;i <= 10;i++)//for循环{//循环体printf("%d ", i);}//换行printf("\n");return 0;
}
输出结果
1 2 3 4 5 6 7 8 9 10D:\VS代码\gitee\lanqiaobei\hang_zhou_dian_zi~~2000~2099\x64\Debug\hang_zhou_dian_zi~~2000~2099.exe (进程 13372)已退出,代码为 0 (0x0)。
要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口. . .
在上面的代码中,首先定义变量i,在for循环内部,首先进行初始化,初始化之后判断,然后进入循环体输出i,输出之后,i进行自增操作,再进行判断,当i不满足条件时,结束循环。
应用场景
for 循环适用于已知循环次数的情况,例如遍历数组、执行固定次数的操作等。
while循环
语法形式
while(条件判断)
{循环语句;
}
执行流程图
流程图解释
开始:程序流程进入 while 循环的判断阶段。
条件判断:对 while 语句中的条件表达式进行评估。如果条件为真(非零值或布尔值 true 代表真),则流程进入循环体执行代码;如果条件为假(零或布尔值 false ),则循环终止,流程结束。
执行循环体:当条件判断为真时,执行 while 循环体内部的代码块。
再次条件判断:循环体执行完毕后,流程会再次回到条件判断步骤,重新评估条件。只要条件仍然为真,就会不断重复执行循环体;一旦条件变为假,循环就会结束。
结束:当条件判断为假时,while 循环执行结束,程序继续执行循环之后的代码。
代码示例
问题:在屏幕上输出1 - 10的数字,数字之间用空格隔开。
以while循环为例,下面展示
代码示例
。
#include<stdio.h>
int main()
{int i = 1;while(i <= 10)//for循环{//循环体printf("%d ", i);i++;}//换行printf("\n");return 0;
}
输出结果
1 2 3 4 5 6 7 8 9 10D:\VS代码\gitee\lanqiaobei\hang_zhou_dian_zi~~2000~2099\x64\Debug\hang_zhou_dian_zi~~2000~2099.exe (进程 20148)已退出,代码为 0 (0x0)。
要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口. . .
在上面的代码中,首先定义变量i,在while循环内部,首先进行条件判断,然后进入循环体输出i,输出之后,i 进行自增操作,再进行判断,当 i 不满足条件时,结束循环。
应用场景
未知次数的循环:当你不清楚循环具体要执行多少次,但知道循环结束的条件时,while 循环非常适用。
条件驱动的操作:在需要根据某个动态条件来决定是否继续执行循环的场景中,while 循环能很好地发挥作用。
while和for循环的对比
for 和 while 在实现循环的过程中都有初始化、判断、调整这三个部分,但是for 循环的三个部分非常集中,便于代码的维护,而如果代码较多的时候while 循环的三个部分就比较分散,所以从形式上for 循环要更优一些。
while 循环的灵活性较高,往往适用于未知次数的循环。循环体内部可以根据需要灵活修改循环控制条件。for循环的代码结构清晰,尤其是在遍历序列时,能够直观地展示出循环的范围和迭代方式,提高了代码的可读性。
do - while循环
含义
do-while循环是一种后测试循环,这意味着循环体中的代码至少会执行一次,因为它是先执行循环体,再检查循环条件。无论条件一开始是否为真,循环体都会执行一次,之后才根据条件判断是否继续执行。
语法形式
do
{循环语句;
}
while(表达式)
执行流程图
流程图解释
开始:程序流程进入 do-while 循环。
执行循环体:直接执行 do 后面花括号内的代码块,它无需先判断条件,循环体至少会执行一次。
条件判断:循环体执行完毕后,对 while 后面的条件表达式进行评估。若条件为真(在 C 语言里非零值代表真),则流程回到循环体继续执行;若条件为假(零值),则循环终止。
结束:当条件判断为假时,do-while 循环结束,程序继续执行循环之后的代码。
代码示例
问题:在屏幕上输出1 - 10的数字,数字之间用空格隔开。
以do-while循环为例,下面展示
代码示例
。
#include<stdio.h>
int main()
{int i = 1;do//do-while循环{//循环体printf("%d ", i);i++;} while (i <= 10);//换行printf("\n");return 0;
}
输出结果
1 2 3 4 5 6 7 8 9 10D:\VS代码\gitee\lanqiaobei\hang_zhou_dian_zi~~2000~2099\x64\Debug\hang_zhou_dian_zi~~2000~2099.exe (进程 3656)已退 出,代码为 0 (0x0)。
要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口. . .
在上面的代码中,首先定义变量i,在do-while循环内部,首先进行循环体输出i,输出之后,i进行自增操作,然后进行条件判断,当i不满足条件时,结束循环。
应用场景
do-while 循环适用于至少需要执行一次循环体的场景,常见的使用场景包括:
用户输入验证:如上述示例 2,确保用户输入符合特定条件。因为无论用户第一次输入是否有效,程序都需要先提示用户输入,所以使用 do-while 循环很合适。
菜单系统:在菜单系统中,至少需要显示一次菜单供用户选择,然后根据用户的选择执行相应的操作,之后再根据条件决定是否继续显示菜单。
for、while和do-while循环的使用次数比较
使用次数:for > while > do-while循环
通常在程序中,使用for循环的次数较多,然后是while循环,最后是do-while循环。读者应在合适的场景下使用三大循环让代码更通俗易懂。
总结
至此,关于 C 语言三大循环的探索暂告一段落,但你的编程征程才刚刚启航。写代码是与机器深度对话,过程中虽会在语法、算法困境里挣扎,但这些磨砺加深了对代码的理解。愿你合上电脑后,灵感不断,在 C 语言的世界里持续深耕,书写属于自己的编程传奇,下一次开启,定有全新的精彩等待。小编期待重逢,盼下次阅读见你们更大进步,共赴代码之约!