2025-06-26 17:01:18

C语言:五种分支语句与三种循环语句 基础知识详解

五种分支语句(Branching statements)

1.单分支语句

单分支语句:当满足特定条件时,执行一段代码。通常使用if语句来实现单分支逻辑。如果条件为真,则执行if语句块中的代码;否则,跳过if语句块,继续执行后续的代码。

格式:if(布尔表达式){

语句 // 布尔表达式为真时执行语句

}

代码:

#include

int main()

{

int a;

scanf("%d", &a);

if(a>10)

printf("您输入的数字大于10“);

return 0;

}

上述代码,当输入的a值大于100时会输出”您输入的数字大于10“。

2.双分支语句

双分支语句:根据条件的真假,执行两个不同的代码块。通常使用if-else语句来实现双分支逻辑。如果条件为真,则执行if语句块中的代码;如果条件为假,则执行else语句块中的代码。

格式:if(布尔表达式){

语句1 // 布尔表达式为真时执行语句1

}

else{

语句2 // 语句1为假时执行语句2

}

代码:

#include

int main()

{

int num;

printf("请输入一个数字:\n");

scanf("%d",&num);

if(num%2 == 1)

{

printf("%d是一个奇数\n",num);

}

else

{

printf("%d是一个偶数\n",num);

}

return 0;

}

上述代码,用于判断输入的数字是否为奇数。

3.多分支语句

多分支语句:一种根据不同的条件,执行多个代码块的语句结构。通常使用if-else if-else语句来实现多分支逻辑。if语句先进行条件判断,如果满足条件则执行相应的代码块,否则继续执行else if语句,直到找到满足条件的代码块,或者执行完所有的else if语句后,执行else语句块。

格式: if(布尔表达式1){

语句1 // 布尔表达式1为真时执行语句1

}

else if(布尔表达式2){

语句2 // 布尔表达式2为真时执行语句1

}

else{

语句3 // 布尔表达式1、2为假时执行语句3

}

代码:

#include

int main()

{

int a, b;

scanf("%d %d", &a, &b);

if (a > b)

{

printf("%d>%d", a, b);

}

else if (a == b)

{

printf("%d=%d", a, b);

}

else

{

printf("%d<%d", a, b);

}

return 0;

}

上述代码,用于判断输入两个数字的大小关系。

4.嵌套语句

嵌套语句:指一个控制语句包含在另一个控制语句内部的情况。例如,在一个if语句块中嵌套了另一个if语句块。嵌套语句可以帮助我们更清晰的构建更复杂的逻辑。

格式: if(布尔表达式1){

语句1 // 布尔表达式1为真时执行语句1

if(布尔表达式2){

语句2 // 布尔表达式2为真时执行语句2

}else{

语句3 // 布尔表达式2为假时执行语句3

}

}

代码:

#include

int main()

{

int num = 10;

if (num >= 0)

{

if (num == 0)

{

printf("Number is zero\n");

}

else

{

printf("Number is positive\n");

}

}

else

{

printf("Number is negative\n");

}

return 0;

}

上述代码中,首先判断是否大于等于0,如果大于等于0,则继续判断是否等于0,如果等于0,则输出“Number is zero”;如果不等于0,则输出“Number is positive”,如果小于0,则输出“Number is negative”。

输出结果 : Number is positive

5.Switch语句

Switch语句:一种在某些编程语言中存在的条件语句,根据给定的表达式的值,执行对应的代码块。遇到break时整个语句会终止。

格式:switch(表达式){

case 1: 语句;break; //根据不同情况,有些break可以省略,是代码更简洁

case 2: 语句;break;

case 3: 语句;break;

... //可以有很多条case语句

default:语句 //default不是switch语句所必需的

}

代码:

#include

int main()

{

char day = 'M';

switch (day)

{

case 'M':

printf("It's Monday\n");

break;

case 'T':

printf("It's Tuesday\n");

break;

case 'W':

printf("It's Wednesday\n");

break;

default:

printf("It's some other day\n");

break;

}

return 0;

}

上述代码,不同的变量代表不同的输出结果。

输出结果 : It's Monday

三种循环语句 (Loop statement)

1. for循环

for循环:一种常用的控制流程语句,用于重复执行指定次数的一段代码。它由三个部分组成:初始化表达式、循环条件和循环迭代。

格式: for (初始化表达式; 循环条件; 循环迭代){

// 循环体

}

代码:

#include

int main()

{

int i;

for(i = 1; i <= 10; i++)

{

if(i == 5)

continue;

printf("%d ",i);

}

return 0;

}

输出结果:1 2 3 4 6 7 8 9 10

注意区分:

①continue的位置:

#include

int main()

{

int i = 1;

while(i<=10)

{

if(i == 5)

continue;

printf("%d",i);

i++;

}

return 0;

}

输出结果:1234 (4后有闪烁的光标,一直进出循环的运行但不再打印4后的数字)

②continue和break:在循环中遇到break就停止后期的所有循环,是用于永久终止循环的;continue是用于终止本次循环的,也就是本次循环中continue后边的代码不会再执行,而是直接跳转到while语句的判断部分,进行下一次循环的入口判断。

#include

int main()

{

int i;

for (i = 1; i <= 10; i++)

{

if (i == 5)

break;

printf("%d ", i);

}

return 0;

}

输出结果:1 2 3 4

2.while循环

while循环:一种在满足特定条件时重复执行一段代码的控制流程语句,具体循环次数在开始时不确定,循环条件在循环开始之前进行判断。

格式:while (循环条件){

// 循环体

}

代码 :

#include

int main()

{

int a,b;

while(scanf("%d %d",&a,&b) != EOF)

{

printf("%d\n",a+b);

}

return 0;

}

上述代码,用于求两数之和。

3.do-while循环

do-while循环:一种先执行循环体,然后在满足特定条件时重复执行一段代码的控制流程语句,该循环体至少被执行一次。

格式:do {

// 循环体

} while (循环条件);

代码 :

#include

int main()

{

int i = 1;

do

{

printf("%d ", i);

i++;

}

while (i <= 5);

printf("\n");

return 0;

}

上述代码,用于打印数字。

输出结果:1 2 3 4 5

您所访问的页面不存在
老干妈输了!10款辣椒酱测评排行榜,最嗲的竟然是…