概述
C语言基础——判断与循环
——循环篇
目录
回顾:
一、定义
二、循环讲解
(一)while循环
1.语法格式:
2.举例
(二)do-while循环
1.语法格式
2.举例,执行三次“我爱×××”
(三)for循环:
1.语法格式
2.举例,输出1-10
(四)最后通过一个代码小结一下判断和循环,同时讲一下continue的用法:
最后的最后:
回顾:
上个篇章中简单说了C语言中的判断的用法,通过代码介绍了if、if-else、switch、break等语法的应用。在最后的时候说到了continue语句,当时说在循环中能够用到。今天我们借助循环的概念给讲一下continue语句的用法。
今天讲的有while循环、do-while循环、for循环、break语句和continue语句在循环中的用法。
一、定义
什么叫做循环?顾名思义,循环就是重复的意思,根据事先设定的条件重复执行一段代码,执行一次,对比一次循环条件,满足则继续执行,不满足则跳出循环。
二、循环讲解
(一)while循环
1.语法格式:
while(循环条件)
{
循环体
}
循环体放在一对花括号中
2.举例
输出十次“我是×××”
假设代码时这样的:
#include<stdio.h>
int main()
{
int i = 0;
while(i < 10)
{
printf("我爱×××n");
}
return 0;
}
我们看一下执行结果:
我们发现执行的次数远远超过十次,为什么会发生这种情况呢?因为每当执行一次循环体都要对比一次循环条件,i依旧为0永远小于10,因此循环体将会永远执行下去。怎么修改呢?我们只需要在循环体中改变i的大小就好了,因此大家需要记住,循环体中记得增加改变约束条件的语句:
#include<stdio.h>
int main()
{
int i = 0;
while(i < 10)
{
printf("我爱×××n");
i++;
}
return 0;
}
这样的代码,我们看一下执行结果:
看来这样是满足我们的需要的
除了在循环体中更改i的值外,我们也可以在判断条件中进行修改,代码如下:
#include<stdio.h>
int main()
{
int i = 0;
while(i++ < 10)
{
printf("我爱×××n");
}
return 0;
}
我们看一下执行结果:
结果是正确的,看来这种方法也可以用,有人会问,为什么可以这样呢?用表达式作为判定条件,每次判断之后,i自动加一。在之前我们说过i++与++i的区别,有兴趣的同学可以尝试一下++i作为判定条件时会出现什么结果,注意输出的次数,想一想为什么会出现这种结果。
(二)do-while循环
1.语法格式
do{
循环体
}while(循环条件);
注意事项和while循环一样,区别在于,do-while循环中,无论判断条件是否成立,循环体都会执行一遍
2.举例,执行三次“我爱×××”
假设代码如下:
#include<stdio.h>
int main()
{
int i = 0;
do{
printf("我爱×××n");
}while(i++ < 3);
return 0;
}
我们看一下执行结果:
我们发现执行了四次,为什么会这样呢?这个就是(i++)这个表达式的特点了,先比较,后加一
执行的顺序为,循环体 (i++)这个表达式为0<3 i=1
循环体 (i++)这个表达式为1<3 i=2
循环体 (i++)这个表达式为2<3 i=3
循环体 (i++)这个表达式为3=3 i=4
因为条件不再满足,因此不再继续执行,可以看到,执行四次是没问题的,怎么修正呢?有两种方法:一修改i++为++i,这样i++这个表达式的值和i增加一后的值是一样的,另一种便是在循环体中设置加一,我们选择其中一种方法修改代码,另外一种自行尝试:
代码如下:
#include<stdio.h>
int main()
{
int i = 0;
do{
printf("我爱×××n");
i++;
}while(i < 3);
return 0;
}
执行结果:
好的,没问题
(三)for循环:
1.语法格式
for(表达式1;表达式2;表达式3)
{
循环体;
}
三个表达式组成循环的条件,表达式可以为空
2.举例,输出1-10
#include<stdio.h>
int main()
{
int i;
for(i = 0; i < 10; i++)
{
printf("%d ", i);
}
return 0;
}
三个表达式用分号隔开,通常第一个表达式用来初始化计数器的初值,比如将i的初值设定为1,第二个表达式用来设定条件,第三个表达式用来改变计数器的值,我们看一下输出的结果:
-
(四)最后通过一个代码小结一下判断和循环,同时讲一下continue的用法:
列举出100以内的个位为3的3的倍数:
#include<stdio.h>
int main()
{
int i = 0;
printf("用while循环实现:n");
while(i++ <= 100)
{
if(i % 3 == 0)
{
if(i%10 == 3)
{
printf("%d ", i);
}
continue;//这句话的意思是结束本次判断,进入下一次判断
}
}
printf("n用for循环:n");
for(i=0; i<=100; i++)
{
if(i % 3 == 0)
{
if(i%10 == 3)
{
printf("%d ", i);
}
continue;//这句话的意思是结束本次判断,进入下一次判断
}
}
}
实现的原理为,先判断该数是否为3的倍数(被3整除,余数为0),再判断个位数是否为3(与10相除,余数为3),如果满足,则把数字打印出来,否则跳出本次循环,进行下一轮判断(continue)
我们看一下运行结果:
-
最后的最后:
开这期博客的目的是为了物联网新生(亲学弟学妹)在假期期间提前了解一下C语言,以免开学后学习吃力,C语言中最简单的东西在这五篇博客中都简单的涉及到了,后面的指针,地址,数组等如果有需要会再开博客出教程,如果没有必要,关于C语言的教程到此为止。
最后
以上就是细腻柜子为你收集整理的C语言基础——判断与循环 ——循环篇回顾:一、定义二、循环讲解最后的最后:的全部内容,希望文章能够帮你解决C语言基础——判断与循环 ——循环篇回顾:一、定义二、循环讲解最后的最后:所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复