提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
本文就介绍了循环结构的基础内容。
一、什么是循环结构?
二、while循环
1.while语句
结构
1. while(表达式)
2. 语句;//如果循环体想包含更多的语句, 可以加上大括号
代码举例
1//代码2
2 #include <stdio. h>
3
4 int main()
5 {
6 while(1)
7 printf("hehe\n"); //while后边的条件满足, 死循环的打印hehe
8 return 0;
2.while的执行流程
首先上来就是执行判断表达式,表达式的值为0,循环直接结束;表达式的值不为0,则执行循环语句,语句执行完后再继续判断,是否进行下一次判断。
实践
下面我们做一个小练习
练习:在屏幕上打印1~10的值参考代码:
1 #include <stdio. h>
2 int main()
3 {
4 int i = 1;
5 while(i<=10)
6 {
7 printf("%d ", i);
81˙=1˙+1;
9 }
10 return 0;
11 }
运行
三、for循环
1.for语句
1 for(表达式1: 表达式2: 表达式3)
2 语句//*如果循环体为多条语句需加上花括号*
2.for的流程图
首先执行 表达式1 初始化循环变量,接下来就是执行 表达式2的判断部分, 表达式2 的结果如果==0,则循环结束; 表达式2
的结果如果!=0则执行循环语句,循环语句执行完后,再去执行表 达式3 ,调整循环变量,然后再去 表达式2 的地方执行判断, 表达式2
的结果是否为0,决定循环是否继续。整个循环的过程中,表达式1初始化部分只被执行1次,剩下的就是表达式2、循环语句、表达式3在循环。
实践
练习: 在屏幕上打印1~10的值
参考代码:
1 #include <stdio. h>
2
3 int main()
4 {
5 int i = 0;
6 for(i=1; i<=10; i++)
7 {
8 printf("%d ", i);
9 }
10
11 return 0;
12 }
运行结果:
while循环和for循环的对比
tip:
for和while 在实现循环的过程中都有初始化、判断、调整这三个部分,但是 for循环的三个部分非常集中,便于代码的维护,而如果代码较多的时候while 循环的三个部分就比较分散,所以从形式上 for 循环要更优一些。
1 #include <stdio. h>
2
3 int main()
4 {
5 int i = 0;
6 int sum = 0;
7 for(i=1; i<=100; i++)
8 {
9 if(i % 3 == 0)
10 sum += i;11 }
12 printf("%d\n", sum);
13 return 0;
14 }
17 //小小的优化
18 //如果能直接产生3的倍数的数字就省去了多余的循环和判断
19 #include <stdio. h>
20
21 int main()
22 {
23 int i = 0;
24 int sum = 0;
25 for(i=3; i<=100; i+=3)
26 {
27 sum += i;
28 }
29 printf("%d\n", sum);
30return 0;
31 }