流程控制语句
C语言提供了三种基本的流程控制语句:顺序结构、分支结构和循环结构。顺序结构是指程序按照代码的书写顺序依次执行,分支结构和循环结构可以使程序根据不同的条件进行选择或者重复执行某段代码。
1 分支结构
主要有if语句、switch语句两种形式。
1.1 if 语句
if 语句用于判断一个条件是否成立,如果成立就执行相应的代码块。
if(条件) {
// 如果条件成立,则执行这里的代码
}
在if语句中,条件可以是任何表达式,只要这个表达式的值为真(非0),就会执行后面的代码块。如果条件为假(0),则跳过整个if块。
除了单独使用之外,还可以在if后面加上else关键字来表示如果条件不成立时要执行的代码块:
if(条件) {
// 如果条件成立,则执行这里的代码
} else {
// 如果条件不成立,则执行这里的代码
}
当然还有一些连续判断,需要用到 else if
if(条件1) {
// 如果条件1成立,则执行这里的代码
} else if(条件2) {
// 如果条件2成立,则执行这里的代码
} else {
// 上面2个都不成立,则执行这里的代码
}
1.2 switch 语句
switch 语句也用于判断一个表达式是否等于某个值,但是它与 if 语句不同之处在于可以根据不同的值来选择多个分支中的一个进行执行。switch 通常用于处理多路分支情况。在 switch 语句中,先判断表达式是否等于 case 后面的值,如果相等就会执行对应的代码块。如果没有任何一个 case 匹配成功,则会执行 default 后面的代码块(如果有)。
switch(表达式) {
case 值1:
// 如果表达式等于值1,则执行这里的代码
break;
case 值2:
// 如果表达式等于值2,则执行这里的代码
break;
default:
// 如果表达式不等于任何一个值,则执行这里的代码
}
2 循环结构
循环结构用于重复执行某段代码,主要有 for、while 和 do-while 三种形式。
2.1 for 循环
for 循环是 C 语言中最常用的循环语句之一,它可以让程序按照指定条件来重复执行某段代码。在 for 循环中,初始化用来设置计数器或者其他需要被初始化的变量;条件用来控制循环何时结束;步进用来更新计数器或者其他需要被更新的变量。每次循环开始前都会先进行一次初始化操作,在每次循环结束后都会进行一次步进操作,并检查条件是否满足以决定是否继续循环。
for(初始化; 条件; 步进) {
// 在条件为真时,重复执行这里的代码
}
2.2 while 循环
while 循环用于在满足指定条件的情况下重复执行某段代码。在while循环中,只要条件为真就会一直重复执行循环体中的代码。如果条件一开始就为假,则循环体内的代码不会被执行。
while(条件) {
// 在条件为真时,重复执行这里的代码
}
2.3 do-while 循环
do-while 循环与 while 循环非常相似,但是在do-while循环中,无论条件是否成立,都会至少执行一次循环体中的代码。
do {
// 先执行一遍这里的代码
} while(条件);