选择结构和循环结构
- 选择结构
- if...else 语句
- switch 语句
- 循环结构
- for 循环
- while 循环
- do-while 循环
选择结构
if…else 语句
if…else 语句的一般形式:
1
2
3
4
5
6
7
8
9if (判断条件) { //满足条件时执行此代码块1; } else { //不满足条件时执行此代码2; }
if…else 语句的流程图为:
例如,利用键盘输入两个数 a 和 b,编写代码输出其中最大的那个数。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24#include<stdio.h> int main() { int a, b,max; printf("input a and b:"); scanf("%d %d", &a, &b); if (a > b) { max = a; } else { max = b; } printf("max = %dn", max); return 0; } /* 结果为 input a and b:12 4 max = 12 */
switch 语句
switch 是另外一种选择结构的语句,可以用来代替简单的、拥有多个分支的 if…else 语句。
switch 语句格式如下:
1
2
3
4
5
6
7
8
9switch(表达式) { case 整型数值1: 语句 1;break; case 整型数值2: 语句 2;break; ...... case 整型数值n: 语句 n;break; default: 语句 n+1;break; }
由于 default 是最后一个分支,匹配后不会再执行其他分支,所以也可以不添加break语句。
注意:
case 后面必须是一个整数,或者是结果为整数的表达式,
break 是C语言中的一个关键字,专门用于跳出 switch 语句。所谓“跳出”,是指一旦遇到 break,就不再执行 switch 中的任何语句。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21#include<stdio.h> int main() { int a; printf("Input integer number:"); scanf("%d", &a); switch (a) { case 1: printf("Mondayn"); break; case 2: printf("Tuesdayn"); break; case 3: printf("Wednesdayn"); break; case 4: printf("Thursdayn"); break; case 5: printf("Fridayn"); break; case 6: printf("Saturdayn"); break; case 7: printf("Sundayn"); break; default:printf("Errorn"); break; } return 0; }
循环结构
for 循环
for 循环的一般形式为:
1
2
3
4
5for(表达式1; 表达式2; 表达式3) { //语句块; }
它的运行过程为:
-
先执行 表达式1。
-
再执行 表达式2 ,如果值为真(非0),则执行循环体,否则结束循环。
-
执行完循环体后再执行 表达式3。
-
重复执行步骤 2) 和 3),直到 表达式2 的值为假,就结束循环。
表达式1 仅在第一次循环时执行,以后都不会再执行,可以认为这是一个初始化语句。
表达式2一般是一个关系表达式,决定了是否还要继续下次循环,称为“循环条件”。
表达式3很多情况下是一个带有自增或自减操作的表达式,以使循环条件逐渐变得“不成立”。
此处不得不说一说 i++ 与 ++i 的区别。
主要区别有两个:
- i++ 返回原来的值,++i 返回加1后的值。
- i++ 不能作为左值,而++i 可以。
for 循环的流程图为:
例如,编写代码计算1+2+3+…+100的值。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18#include<stdio.h> int main() { int sum = 0; int i; for (i = 1; i <= 100; i++) { sum = sum + i; } printf("sum = %dn", sum); return 0; } /* 结果为: sum = 5050 */
while 循环
while 循环的一般形式为:
1
2
3
4while(表达式){ //语句块 }
通常将 表达式 称为 循环条件,把 语句块 称为 循环体,整个循环的过程就是不断地判断循环条件、并执行循环体的过程。
同样之前 for 循环的例子。(编写代码计算1+2+3+…+100的值。)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18#include<stdio.h> int main() { int sum = 0, i = 1; while (i <= 100) { sum += i; i++; } printf("sum = %dn", sum); return 0; } /* 结果为: sum = 5050 */
do-while 循环
do-while 循环的一般形式为:
1
2
3
4do{ 语句块 }while(表达式);
最后那个分号必须有,不能丢。
do-while 循环先执行 语句块 ,然后再判断表达式是否为真,若为真则继续循环;若为假,则终止循环。
再次重复循环的那个例子。(编写代码计算1+2+3+…+100的值。)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17#include<stdio.h> int main() { int sum = 0, i = 1; do{ sum += i; i++; } while (i <= 100); printf("sum = %dn", sum); return 0; } /* 结果为: sum = 5050 */
比较常用的循环是 for 循环和 while 循环…
最后
以上就是潇洒小猫咪最近收集整理的关于选择结构和循环结构选择结构循环结构的全部内容,更多相关选择结构和循环结构选择结构循环结构内容请搜索靠谱客的其他文章。
发表评论 取消回复