流程控制语句

发布于:2025-09-08 ⋅ 阅读:(25) ⋅ 点赞:(0)

1.顺序结构

  • 是程序默认的执行流程
  • 从上往下进行

2.分支结构

if语句:运用于某些代码在某些场景中才能使用

变量的生命周期:变量只在所属的大括号中有效,即输出变量结果时若是变量定义在大括号内,而输出在大括号外,则会报错因为变量只在大括号内有效,出了大括号就会消失,所以变量定义要在大括号外,输出在大括号内或外皆可,另外,若在大括号内定义变量并且输出,在括号外定义相同变量并且输出,运行结果是两者皆输出,因为大括号内的运行完后脱离大括号就消失了,不会影响外面的变量的运行,但如果外面没有定义变量直接输出,则会报错,因为大括号内的变量出了大括号就会消失。

eg.:

1)if语句第一种

  • 格式:
if(关系表达式)
{
语句体;
}
  • 练习:

  • 细节1:在C语言中,如果判断的结果是一个数字,非0表示条件成立,0表示条件不成立,

不成立则不执行大括号内的内容,成立才执行

eg.:

  • 细节2:如果大括号里面的语句体只有一行,那么大括号可以省略不写

2)if语句第二种

  • 格式:
if(关系表达式)
{
语句体A;
}else{
语句体B;
}
  • 练习与应用:

注意细节:==是判断,=是赋值

3)if语句格式第三种

  • 格式:
if(关系表达式)
{
语句体A;
}
else if(关系表达式)
{
语句体B;
}
else if(关系表达式)
{
语句体C;
}
……
else
{
语句体N;
}
  • 练习:

另外:if语句也可嵌套使用

例如:

将不同的选择一一列举出来,再根据不同的条件任选其一

4)switch语句

  • 格式:
switch(表达式){
  case 值1:
      语句体1;
      break;
  case 值1:
      语句体2;
      break;
……
  default:
      语句体n;
      break;
}

细节:

  • 表达式不能是判断语句,必须是能计算出结果的
  • 表达式计算结果只能为字符或整数
  • 每个case的值只能是字符或整数的字面量,且不能重复
  • break表示中断,结束的意思
  • default是在所有情况都不匹配时执行
  • switch语句执行有限,if语句执行范围大,但是在有限时执行switch效率更高
  • case穿透:如果在执行的过程中,遇到了break,那么直接结束整个switch,但是如果没有遇到break,就会继续执行下面case中的代码,前提是从case定义了数值的那部分开始,直到遇到break,或者把整个switch中所有的代码全部执行完了,才会结束
  • 另外,case会一直往下穿运行,所以若是将default放到运行的case值前面,就不会运行,但如果number值在case中不存在,超出范围,则会运行放在case值前面的default

eg.:

  • 运用:

3.循环结构

分为三种:for,while,do…while

1)for语句:循环重复某件事情

  • 格式:
for(初始化语句;条件判断语句;条件控制语句)
{
循环体语句;
}
  • 运用:

  • 练习:

ps:若是将此处大括号外的变量定义和输出都放到了大括号里面,那么每次sum都会从0开始,所得到的结果就会是累加的结果,故最后的结果会是100

综合运用:

流程分析:

  1. 首先执行初始化语句
  2. 然后执行条件判断语句进行判断
  3. 若条件成立就执行循环体语句,不成立循环结束
  4. 如果循环继续,就执行条件控制语句
  5. 然后再进行条件判断语句
  6. 然后进行判断,以此类推

比如题目:

2)while语句

  • 格式:
初始化语句;
while(条件判断语句)
{
循环体语句;
条件控制语句;
}

eg.:

  • for和while的相同点:运行规则一样
  • for和while的区别:

for循环中:知道循环次数或者循环的范围

while循环:不知道循环的次数和范围,只知道循环的结束条件。

综合运用:

如果初始化语句写在循环里,那么每次都会从0开始,写在外面才能累加

  • 此处是直接利用无限循环加上break的终止直接运行

3)do …while

初始化语句;
do
{
循环体语句;
条件控制语句;
}while(条件判断语句);

  • 先执行后判断,循环体至少循环一次,而且当循环结果不符合while中的判断结果就会直接跳出,结束程序的进行,但在结束之前是已经循环了一次,因为是从上往下执行,循环在前,判断在后,但是条件控制句不会执行,因为循环的是循环体语句
  • ps:循环体是循环现在要做的事,条件控制语句是控制循环进行的


网站公告

今日签到

点亮在社区的每一天
去签到