C语言中的三大魔王(三大循环语句)

C语言的循环语句

C语言循环控制语句是一个基于C语言的编程语句,该语句主要有while循环语句、do-while循环语句和for循环语句来实现循环结构。

for循环

for的循环结构的基本语法是:
for(表达式1;表达式2;表达式3){

循环体;


C语言中的三大魔王(三大循环语句)_第1张图片
第1个表达式是初始化,只会在for开始循环的时候执行一次,第2个表达式是测试条件,在执行循环之前会表达式求值,如果值为假(本例中,i>number时),循环结束。第3个表达式执行更新,在每次循环结束时求值。用这个表达式来递增 (i) 的值(或递减, i- -
案例:

#include 
#include 
//使用for循环的计数循环
int main()
{
    const int number=5;
    int i;
    for(i=1;i<=number;i++)
    {
        printf("第%d次循环\n",i);
    }
return 0;
}

输出结果:
C语言中的三大魔王(三大循环语句)_第2张图片

for循环的其他格式:
表达式1、表达式2、表达式3都可以省略。
注意:表达式2没写的话会进入死循环。就算表达式1、表达式3不写,也要记得写分号。表达式1、表达式3可以写任意语句,要用逗号隔开。

while循环

while循环的基本语法是:
while(表达式)
{
循环体;
}
C语言中的三大魔王(三大循环语句)_第3张图片
当表达式的值为真(或者简单来说,非零),那么就执行一次循环体。然后在判断一次表达式,在表达式为假(0)之前,循环的判断和执行一直重复进行。每次循环都被称为一次迭代(iteration),在文章后面有讲C中的真和假的值

案例:

#include 
#include 

int main()
{
    int n=5;
    while (n < 7)
    {
        printf("n = %d\n", n);
        n++;
    }
return 0;
}

输出结果
在这里插入图片描述

while循环需要注意的地方:

1.防止死循环。避免条件永真或者永假。如果永真则死循环;如果永假则不循环,写起来毫无意义。

2.while循环后,不要加分号,即在while后面不要加分号(;)。如果想加分号,可以在大括号后面加,(即};)。

3.不要忘记写结束循环的语句。

do while循环

do while循环的基本语法是:
do{

循环体;

}while(表达式);
C语言中的三大魔王(三大循环语句)_第4张图片
do while循环在执行完循环体之后才判断表达式,所以至少会执行一次循环体。do while循环适合那些至少要迭代一次的循环,例如下面的案例,下面是一个包含do while循环的密码验证,只有在输入正确密码时,循环才会终止。否则继续执行循环体。
案例:

#include 
#include 

int main()
{
   int a=123456;
   int b;
   do
   {
       printf("请输入密码:");
       scanf("%d",&b);
   }while(b!=a);
    printf("密码正确\n");
return 0;
}

输出结果:
在这里插入图片描述

如何选择循环

如何选择你要使用哪种循环呢?
首先,你要确定需要的是入口条件循环还是出口条件循环。
入口条件循环:for循环、while循环,出口条件循环:do while循环。
一般入口条件循环用的比较多,1.一般原则是在执行循环的时候就进行判断比较好。2.判断放在循环的开头,程序可读性高。当然也有些是需要用到出口条件循环的,所以各有优点。

真假的值

案例:

#include 
#include 

int main()
{
   int true_val,false_val;

   true_val=(5 > 3);
   false_val=(10 == 2);
   printf("true=%d,false=%d\n",true_val,false_val);
return 0;
}

输出结果:
在这里插入图片描述
上面的案例中,把两个关系表达式的是分别赋给了两个变量,即把表达式为真的赋值给了true_val,把假的赋值给了false_val。从结果可以看出,在C语言中,表达式为真的值是1,表达式为假的值是0。
当然,还有其他的数字也可以表示真假。在C语言中,一般来说,所有的非零值都视为真,只有零为视为假。
这C语言的概念还真宽!
本篇博客就介绍到这里了,当然,这里只是初步介绍。也是最基础,可不要小看他们哦!他们的三大魔王可不是白叫的哦。

你可能感兴趣的:(c语言)