人生就是日复一日地不断重复,既有相同的事情,也有相似的事情,却无论如何无法回到最初。要想在生活的每一刻都有新的发现,恐怕只是一个美好的愿意。本篇将为友友们介绍程序中的重复流程——循环。
while循环是C语言中的一种循环结构,可以让程序重复执行一段代码,直到满足特定条件才停止循环
while (condition)
{
//执行代码
}
这里的 condition 呢?就是条件的意思,与我们上回分支结构讲解的()判断判断部分是一样的,非0为真,为真就执行花括号内的语句,0为假,为假就跳过花括号内的语句就不执行。
例如,下面的代码将会不停地打印数字,直到i的值等于10:
int i = 1;
while (i <= 10)
{
printf("%d\n", i);
i++;
}
上面的例子我们看到了while语句的特点,i 在 while 旁的 () 先判断,再考虑是否执行,执行 i++ 完之后再返回while再重新返回 () 再判断,循环往复,直到结果为 i 不满足小于 10 就跳出循环。
鱼式疯言
while的判断次数总是比执行次数多一次,
什么!!! 有人问:a++是什么?
其实a++—>a = a+1;意味着每次执行a++ 后 a都会加上1.
break示例:
#include
int main()
{
int i = 1;
while (i <= 10)
{
if (i == 5)
break;//当i等于5后,就执⾏break,循环就终⽌了
printf("%d ", i);
i = i + 1;
}
return 0;
}
上回分支语句说过:break是直接跳出循环,跳到循环外的代码开始执行。以上代码就是最好的例子,当 if 中的判断 非0 是执行 break,循环就终止到 4 了 。
continue示例:
#include
int main()
{
int i = 1;
while (i <= 10)
{
i++;
if (i == 5)
continue;//当i等于5后,就执⾏continue,跳过本次循环.
printf("%d ", i);
}
return 0;
}
continue 就是跳过本次循环后面的代码,直接进入判断部分.
do…while 是一种循环语句,它会执行一系列语句,并且在每次执行后检查指定条件是否为真。如果条件为真,循环将继续执行,直到条件为假为止。与 while 循环不同的是,do …while 循环至少会执行一次循环体内的语句,因为它是先执行一次循环体,再判断条件是否成立。
do {
// 执行的语句
}
while (条件);
例如:
#include
int main()
{
int n=0;
scanf("%d",&n);
do
{
printf("%d ",n%10);
n=n/10;
}
while(n);
}
上面这段程序的执行顺序是先执行 do 后在跳转到 while 再判断的,n被不断除以 10 ,最终直到 n=0 时就跳出循环,这里的 n 还是利用我们上面解释的 while 中()的判断部分所说 n为 非0 执行,为 0 不执行。
鱼式疯言
do…while 的特点:先执行程序再判断,执行一段再判断一段,最终判断次数等于执行次数。
关于这段代码怎么运行的这里小编不做过多解释哦,后期咱们会有详解哦,这里只是举个栗子。
do…while 和 while 中的 break , continue 相似,小编这里就不赘述了.
for语句是一种循环语句,在程序中重复执行一段代码。for语句包含一个起始值、一个结束值和一个步长,并在代码块中包含要执行的操作。每次循环,起始值被递增或递减,直到到达结束值为止。
for (起始值; 循环条件; 步长)
{
// 循环执行的代码块
}
举个栗子:
#include
int main()
{
for (int i = 1; i <= 10; i++)
{
printf("%d ", i);
}
return 0;
}
大家看for循环是不是感觉很养眼呢,是的哦,它把咱们起始值 i 多少,循环条件,以及循环要加多少,变化多少的步长都放在一个括号内。这样集中起来日后修改起来也方便。
鱼式疯言
for 循环的起始值只是在刚开始进入 for 时只用一次哦,大家可以想想,如果多次进入都是这个起始值,接下来的循环也就变成了死循环啦,所以我们才把他称为初始值。
break 示例:
#include
int main()
{
for (int i = 1; i <= 10; i++)
{
if (5==i)
break;
printf("%d ",i);
}
return 0;
}
这里和 while 中的 break 也是没啥区别的主要看下我们 for 循环中的 continue
#include
int main()
{
for (int i = 1; i <= 10; i++)
{
if (5==i)
continue;
printf("%d ",i);
}
return 0;
}
大家都看到了吧,就完美说明了一开始执行continue进入判断判断部分,下面两张插图友友们可以对比下哦!
快到底了,友友们看看这篇博文咱都收获了什么呢?
介绍了循环语句的是啥?
C语言是分 while , do…while 和 for 的三种循环语句,都各有特色,但我们在平常编程过程中的使用热度:for > while > for这样的排序.for是集大成者哦,大家以后使用的时候就知道咯.
break和continue在循环中的作用.
说白了就是:break是直接跳 不回头 ,continue是 跳本次 ,但还是要 回头判断 的.
鱼式疯言
下面说说小编对 break 和 continue 的理解,
当我们一旦到达某个条件就满足咱们要求了,比如我就要5前面的数字,我们就用到 break 最好,
如果这个数字从 2 到 11 中间扣掉4,我们用 continue 岂不美哉
本次博文就到这里了,感觉各位小伙伴的赏脸品读小编写的拙作哦,如果觉得小编写的还不错的咱可支持三关下,不妥当的咱评论区指正,希望我的文章能给各位家人们带来哪怕一点点的收获就是小编创作的最大动力