通过学习,我学习了C语言的三种循环语句,分别为for循环语句,while循环语句,do-while循环语句,三个循环语句各有特点,且几乎可以相互转换,但需要根据实际情况,选择更为合理的一种语句,我对此进行自我总结,如下所述。
1.while()循环,while循环是我接触的第一个循环,他的运行条件和if语句十分相似,先进行判断,结果为真就进入循环,结果为假,就跳过循环。while(表达式){语句},不过要注意while语句后面不能加;,这会使循环体是一个空语句,导致死循环。如果仅仅是为了判断那么循环就没那么大的作用了,while循环需要有调整的过程,有调整的过程才会使循环变得多彩,例如打印1~10的数字
很显然i++的使用,巧妙的利用了循环,让我们成功打印出1~10的数字。
#include <stdio.h>
int main()
{
int i = 1;
while(i<10)
{
printf("%d ", i);
i++;
}
return 0;
}
2.for循环
for循环的基本结构是for(初始化;判断;调整;){表达式}
所谓初始化即代码中while循环中 int i = 1;的过程,判断即i<10的条件;调整即i++的过程
for循环能够将这三者融为一体,直接表述出来
#include <stdio.h>
int main()
{
int i = 0;
for(i=1; i<=10; i++)
{
printf("%d ", i);
}
return 0;
}
是不是变得简洁多了,在表达式中仅仅需要打印这一个语句就够了。
<*>for循环和while循环的区别和相同
for 和 while 在实现循环的过程中都有初始化、判断、调整这三个部分,但是 for 循环的三个部
分⾮常集中,便于代码的维护,⽽如果代码较多的时候 while 循环的三个部分就⽐较分散,所以从形式上 for 循环要更优⼀些。
3.do-while语句
这个循环语句顾名思义,先进行表达式,再进行循环,即do{表达式}while(判断);
与前两者不同的是do-while语句的执行语句是至少执行一次的,而前两者如果第一次判断为假则执行语句不会执行。
4.break;
break的使用能够让执行中的语句立刻跳出循环,即永久终止循环。
#include <stdio.h>
int main()
{
int i = 1;
while(i<=10)
{
if(i == 5)
break;
printf("%d ", i);
i = i+1;
}
return 0;
}
如代码所示,在i自增到5后,则会跳出循环,所以打印的结果为1 2 3 4
break的使用能够让执行语句的过程中如果满足全部条件后,没必要进行其后的循环,break就能够大大减少运算的时间。在三种循环中break一视同仁,用法相同作用相同;
5.continue
continue 的作⽤是跳过本次循环 continue 后边的代码,在 for 循环和 while 循环中有所
差异的。
在for循环中continue的使用,会跳过本次循环,直接进行调整。
而在while循环中如果调整语句在continue的后面,则不会调整,很容易出现死循环的情况。如下
#include <stdio.h>
int main()
{
int i = 1;
while(i<=10)
{
if(i == 5)
continue;
//因为这⾥跳过了i = i+1,程序陷⼊死循环
printf("%d ", i);
i = i+1;
}
return 0;
}
6.goto语句
goto语句能够实现在同一函数内的任意跳转,注意是同一函数,如果跨函数肯定是不行的。
goto语句可以一下跳出多层循环,没必要再用多个break进行。但是goto语句会打乱代码的逻辑,能不用就不用。
好了好了,关于循环语句的总结就到此为止吧,希望在编程的路上越走越远,成为真正的大佬。