C语言循环篇章

if

if语句不是循环语句,之所以和循环语句放到一起是因为if语句通常和循环语句嵌套使用

if语句的语法格式是,if是如果的意思。

1
if(表达式)
    语句







2
if()
{

}
else
{

}



3
if()
{

}
else if()
{

}
else
{

}




4
if()
{

}
if()
{
    else
    {

    }

}//根据需求进行嵌套

当然有如果就有除非

if(a>b)//如果a大于b,则进行下面的程序运行
{
  printf("a大于b");/如果a大于b,则打印a大于b

}
else//除非则执行下面操作
{
  printf("a不大于b");
  
}

也可以多个条件排除,如果有多条条件语句的时候,此时else的后缀条件不需要加上,就像已经知道a不大于也不等于 那就只能小于了

if(a>b)//如果a大于b,则进行下面的程序运行
{
  printf("a大于b");//如果a大于b,则打印a大于b

}

else if(a == b)//如果a等于b
{
  printf("a等于b");
}

else//除非则执行下面操作
{
  printf("a小于b");
  
}

当让if的语句也可以同时几个if使用,此时不再是非此即彼的关系,简单的说就是,当if和else连着使用的时候,条件语句只会打印一个,但是如下的情况的时候,打印就不是只打印一个,而是把所有符合条件的语句都打印

#include<stdio.h>
int main()
{
int i = 0;
int j = 0'
scanf("%d%d",&i,&j);

if(a>b)//如果a大于b,则进行下面的程序运行
{
  printf("a大于b");//如果a大于b,则打印a大于b

}

if(a <= b)//如果a小于等于b
{
  printf("a小于等于b");
}

if(a==b)//如果a等于b
{
  printf("a等于b");
  
}


此时如果输入的数值 是9 9 两个一样的数值,那么此时会打印
a小于等于b
a等于b



return 0;
}

————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

while

关于while的循环语句就比较简单,需要注意的是while的循环语句是循环的,既然是循环的,那就需要有个条件让循环停下来。那就是break;

语法格式

1
while(表达式)
语句;//如果循环体想包含更多的语句,可以加上大括号


2
while()
  printf();
  break;//停止循环,但是此处如果给while,加上break;那就没有循环语句了


3
//这里采取一个嵌套的,不管输入两个数字哪个大,最后都是a大

#include<stdio.h>
int main()
{


int a=0;
int b=0;

while(scanf(“%d%d”,&a,&b)!=EOF)//表明语句可以循环输入

if(a>b)
{
 printf(“此时a比较大”);
}

else//如果a不大于b此时进入循环
{  
  while(a<b)
     {
     if(a<=b)//如果a小于b
     {
       a++;//每次循环a加上1
     }
     else(a>b)//直到循环到a大于b
     {
       printf(“此时a比较大”);
       break;//此时的break用法是跳出循环语句,并且是先打印出a比较大 再跳出循环。
     }
}
      
//所以这个循环语句里面 不管输入的是什么 反正就是啊肯定会比较大




return 0;
}

思维逻辑

需要注意的是while一般的使用场景会比较大一点,因为while的使用场景更加灵活

while 循环可能会导致无限循环,如果条件 condition 永远为真,循环体将永远执行。为了避免这种情况,需要确保循环体中包含了能够最终使条件变为假的操作

或者可以跳出循环语句的break 这个就是只要满足条件直接跳出循环语句

————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

do-while

这个语句需要注意的是,在do-while语句里面,和其他语句都不同的是,do-while语句会先循环一次,再进行打印。而其他语句一般是先执行再循环,do-while一般不管三七二十一,先来一遍循环

举例

do
语句;
while(表达式):

逻辑

int main()
{


int i = 1;

do                       //直接进入循环
{
printf("%d",i);         //里面是循环一次打印一次
i++;                     //打印完就加上1
} while (i<=10);         //循环次数小于等于10次
 




return 0;
}

值得注意的是

相对于for循环和while循环,do-while循环的使用次数确实较少。这主要是因为do-while循环的特点是“后测试”,即先执行一次循环体,然后再判断循环条件是否满足。而for循环和while循环都是“先测试”,即在每次循环之前判断循环条件是否满足。因此,在大多数情况下,for循环和while循环更能满足编程需求。

————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

switch

语法格式

switch (expression) 
{
case value1: statement2
case value2: statementdefault: statement
}

简单的解释就是

int main()
{

int num = 0;

scanf("%d"&num)

switch (num %3)//这里计算输入的数字除以三取模
{
  case 0:      //当整除的时候 打印余数0   
    printf("余数是0\n");
    break;     //跳出循环
  case 1:      //余数1 的时候打印余数是1
    printf("余数是1\n");
    break ;     //跳出循环
  case 2;      //余数2 的时候打印余数是2
    printf("余数是2\n");
    break;     //跳出循环

}




return 0;
}

当然也有特殊情况

default;      //当以上情况都不满足的时候

int main()
{

int num = 0;

scanf("%d"&num)

switch (num %3)//这里计算输入的数字除以三取模
{
  case 0:      //当整除的时候 打印余数0   
    printf("余数是0\n");
    break;     //跳出循环
  case 1:      //余数1 的时候打印余数是1
    printf("余数是1\n");
    break ;     //跳出循环
  default;      //当以上情况都不满足的时候 这里等同于余数2 的时候打印余数是2
    printf("余数是2\n");
    break;     //跳出循环

}




return 0;
}

————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

for

表达式1 ⽤于循环变量的初始化

表达式2 ⽤于循环结束条件的判断

表达式3 ⽤于循环变量的调整

语法格式

for(表达式1;表达式2;表达式3
语句;//如果循环体包含更多的语句,可以加上大括号



逻辑

简单的说就是

#include<stdio.h>
int main()
{

int i = 0;
int sum = 0;


for (i = 1; i <= 100; i++) //进入一个for循环,i的开始是1,循环的次数100次,每次循环结束加一
{

if(i%3 == 0)
{
sum = sum + i;            //求的是1-100 三的倍数相加的数字
printf("%d\n",sum);
}


return 0:
}

  • 21
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值