C语言中的循环之 do...while循环 (上)-学习笔记-10

引入循环

为什么需要循环呢?比如,你遇到了…
1+2+3+4+5
遇到这样的数累加,加到5加到10可能都没问题,加到10000呢..
1+2+3+...+10000
是不是就崩溃了…
为了能让计算机能够进行多次运算,所以就有了循环的出现。
在 C 语言中,一共有两种循环,一种是 while 循环另一种是 for 循环,我们先来说 while 循环。

从一个例子开始

如果我们需要计算1~30的累加,即1+2+3+...+30该如何写呢?
如果是以前,我们可能要一个一个的输入,但是现在我们引入了 while 循环,就可以通过一个循环来完成这件事了~

1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
int main(){
int result=0;
int i=1;
while(i<=30){
result=result+i;
i++;
}
printf("1~30的累加结果是:%d\n",result);
}
//执行结果是『1~30的累加结果是:465』

上面这个累加程序,我们一开始定义了一个 i 来记录循环次数,并通过 i 的变大,来完成累加的效果。
while 循环会首先检验 i 是否满足小于等于30这个条件,如果为真,则执行循环体内的语句,也就是 while 后面花括号中的内容

while 循环

先判断条件,如果为真则循环执行循环体内的代码。

一般形式

while (表达式) 语句

使用

  1. 这个循环体的次数由表达式来控制
  2. 后面的循环体可以跟简单语句,也可以是复合语句。
  3. 不要忽略给计次变量赋初始值,否则不可预测

do while 循环

先执行循环体内的代码,然后在判断是否继续循环。

引入

使用 do…while 语句来完成上面的那个例子

1
2
3
4
5
6
7
8
9
10
#include <stdio.h>
int main(){
int i=1,result=0;
do{
result=result+i;
i++;
}while(i<=30);
printf("1~30的的累加结果是:%d\n",result);
return 0;
}

我们注意到,这次循环是以 do 开头然后跟花括号,花括号内是循环体,最后再进行判断。

注意
这里的while 后面记得加分号

一般形式

do 循环体 while (表达式)

使用

do…while 的特点就是,先无条件的执行一次循环体,然后再决定是否要继续执行。

和 while 的区别

这两个最大的区别就是先执行和后执行的问题,如果条件表达式为假,那么先执行一遍的内容就变了,而 while 就会因为条件为假,所以一次都没有执行,这是他们最大的区别。

尾巴

这是我的个人学习笔记,主要是应付考研复习使用,充斥着一些吐槽和个人观点,并不严谨,欢迎大家参考、指正。


-------------The End-------------
欢迎请我喝咖啡哦~!