常用的流程图符号
- 起止框用于表示流程的开始或结束;
- 输入/输出框用平行四边形表示,在平行四边形内可以写明输入或输出的内容;
- 判断框用菱形表示,它的作用是对条件进行判断,根据条件是否成立来决定如何执行后续的操作;
- 处理框用矩形表示,它代表程序中的处理功能,如算术运算和赋值等;
- 流程线用实心单向箭头或直线表示,可以连接不同位置的图框,流程线的标准流向是从左到右和从上到下,可用直线表示,非标准流向的流程线应使用箭头指示方向;
- 连接点用圆形表示,用于流程图的延续。
在C语言中0代表假,非0代表真
顺序结构语句
最常见的执行结构,计算机语言往大了说都是属于顺序结构
顺序结构:所有语句从上到下顺序执行
选择结构语句
if条件语句
- if语句
1
2
3
4if (条件语句)
{
//代码块
}
- if···else语句
1
2
3
4
5
6
7
8
9
10if (判断条件)
{
//执行语句1
···
}
else
{
//执行语句2
···
}
- if···else if···else语句
else永远是和最近的一条if语句配对1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17if (判断条件1)
{
//执行语句1
}
else if (判断条件2)
{
//执行语句2
}
···
else if (判断条件n)
{
//执行语句n
}
else
{
//执行语句n+1
}
switch条件语句
switch作为一种条件选择语句,主要适用于具体值的判断,而if适用于范围值的判断,侧重点不同。
switch是为多重选择准备的,遇到break语句,switch就终端执行1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16switch (表达式)
{
case 目标值1:
//执行语句1
break;
case 目标值2:
//执行语句2
break;
···
case 目标值n:
//执行语句n
break;
default:
//执行语句n+1
break;
}
switch将表达式的值与case中的值对比,执行与之相匹配的case内语句,直到遇到break退出。
循环结构语句
在符合某一条件的情况下,不断地重复某一段代码,这种叫做循环语句
while循环语句
1 | while (循环条件) |
do-while循环语句
1 | do |
for循环语句
1 | for(初始化表达式; 循环条件; 操作表达式) |
循环嵌套
循环嵌套在各种语言中都很常用
外层循环控制行,内层循环控制列1
2
3
4
5
6
7
8
9
10
11*
**
***
****
*****
******
*****
****
***
**
*
1 | int i; |
1 | * |
1 | int i; |
跳转语句(break、goto、continue)
break语句
在switch条件语句和循环语句中都可以使用break语句
当它出现在switch条件语句中时,作用是终止某个case并跳出switch结构
当它出现在循环语句中,作用是跳出当前循环语句,执行后面的代码goto语句
尽量不要在程序当中使用goto语句
当break语句出现在嵌套循环中的内层循环时,它只能跳出内层循环,如果想要跳出外层循环则需要对外层循环添加标记,然后使用goto语句1
2
3
4
5int i = 0;
start:
scanf("%d", &i);
if(i == 1)
goto start;continue语句
在循环语句中,如果希望立即终止本次循环,并执行下一次循环,此时就需要使用continue语句