首页 > 其他分享 >流程控制语句结构

流程控制语句结构

时间:2024-07-29 13:56:51浏览次数:14  
标签:语句 控制 循环体 示例 int 流程 while 循环

流程控制语句结构

目录

1.顺序结构

定义与特点

  • 定义:顺序结构是指程序按照代码的书写顺序,从上到下依次执行的结构。
  • 特点:
    • 自上而下:程序从第一条语句开始,按照代码书写顺序逐条执行,直到最后一条语句。
    • 没有分支:在顺序结构中,程序的执行路径单一,不会发生跳转或者分支。
    • 简单易懂:逻辑直接明了,便于理解和编写。

示例

class test{
	public static mian(String[] argus){
        int a=5;
        int b=9;
        int c=a+b;
        System.out.println(c);
    }
}

2.分支结构

Java程序的分支结构是Java编程中用于实现条件判断的重要结构,它允许程序根据不同的条件执行不同的代码块。Java中的分支机构主要包括if-else语句和switch语句。

2.1. if-else语句

if-else语句是Java中最基本的条件判断语句,它根据布尔表达式的值来决定是否执行某个语句块。

  • 基本语法

    if (条件表达式) {  
        // 条件为真时执行的代码  
    } else {  
        // 条件为假时执行的代码  
    }
    

    当条件表达式的结果为true时,执行if语句块中的代码;如果为false,则执行else语句块中的代码(如果存在的话)。

  • 特点

    • 支持嵌套使用,即在一个ifelse语句块内部再嵌套另一个if-else语句。
    • 可以有多个else if分支,用于处理多个条件。
  • 示例

    int score = 85;  
    if (score > 90) {  
        System.out.println("优秀");  
    } else if (score > 80) {  
        System.out.println("良好");  
    } else if (score > 70) {  
        System.out.println("中等");  
    } else if (score > 60) {  
        System.out.println("及格");  
    } else {  
        System.out.println("不及格");  
    }
    

2.2. switch语句

switch语句是另一种条件判断语句,它允许一个变量或表达式与多个case标签进行比较,并执行与匹配case相关联的语句块。

  • 基本语法

    switch (表达式) {  
        case 值1:  
            // 与值1匹配时执行的代码  
            break;  
        case 值2:  
            // 与值2匹配时执行的代码  
            break;  
        // 可以有更多的case  
        default:  
            // 没有任何case匹配时执行的代码  
    }
    

    注意,每个case块的末尾通常会有一个break语句,用于跳出switch语句,防止代码继续执行到下一个case块。

  • 特点

    • switch语句中的表达式通常是整型(byteshortcharint)、枚举(enum)类型或字符串(从Java 7开始支持)。
    • case标签必须是常量表达式。
    • 如果没有任何case匹配,并且存在default分支,则执行default分支中的代码。
  • 示例

    String day = "MONDAY";  
    switch (day) {  
        case "MONDAY":  
            System.out.println("今天是星期一");  
            break;  
        case "TUESDAY":  
            System.out.println("今天是星期二");  
            break;  
        // 可以有更多的case  
        default:  
            System.out.println("今天不是星期一也不是星期二");  
    }
    

3.循环结构

Java程序的循环结构主要用于重复执行一段代码,直到满足某个条件为止。Java提供了三种主要的循环结构:for循环、while循环和do-while循环。每种循环结构都有其独特的使用场景和优势。

1. for循环

for循环通常用于已知循环次数的场景,其语法结构清晰,易于理解。

语法格式

for(初始化表达式; 循环条件表达式; 迭代表达式) {  
    // 循环体  
}

执行流程

  1. 执行初始化表达式。
  2. 评估循环条件表达式,如果为true,则执行循环体;如果为false,则退出循环。
  3. 执行循环体。
  4. 执行迭代表达式。
  5. 回到第2步,重复执行,直到循环条件表达式为false。

示例

for(int i = 0; i < 5; i++) {  
    System.out.println(i);  
}

该示例中,循环变量i从0开始,每次循环增加1,直到i的值小于5为止。循环体内打印出当前的i值。

2. while循环

while循环在循环开始前检查条件,如果条件为真,则执行循环体。

语法格式

while(循环条件) {  
    // 循环体  
    // 更新循环条件的语句(通常放在循环体内部)  
}

执行流程

  1. 评估循环条件,如果为true,则执行循环体;如果为false,则退出循环。
  2. 执行循环体。
  3. 回到第1步,重复执行,直到循环条件为false。

示例

int i = 0;  
while(i < 5) {  
    System.out.println(i);  
    i++;  
}

该示例中,首先初始化变量i为0,然后在while循环中检查i的值是否小于5。如果是,则执行循环体,打印出i的值,并将i增加1。

3. do-while循环

do-while循环与while循环类似,但至少会执行一次循环体,然后再检查条件。

语法格式

do {  
    // 循环体  
    // 更新循环条件的语句(通常放在循环体内部)  
} while(循环条件);

执行流程

  1. 执行循环体。
  2. 评估循环条件,如果为true,则回到第1步继续执行;如果为false,则退出循环。

示例

int i = 0;  
do {  
    System.out.println(i);  
    i++;  
} while(i < 5);

该示例中,do-while循环首先执行循环体,打印出i的值,并将i增加1。然后检查i的值是否小于5,如果是,则继续执行循环体;否则,退出循环。

使用场景和注意事项

  • 当循环次数已知时,通常使用for循环。
  • 当循环次数未知,但需要在循环开始前检查条件时,使用while循环。
  • 当需要至少执行一次循环体时,使用do-while循环。

在使用循环结构时,应注意以下几点:

  • 确保循环条件能够最终变为假,否则会导致无限循环。
  • 在循环体内更新循环条件,以确保循环能够正常终止。
  • 避免在循环体内修改循环变量,除非这是预期的行为。
  • 注意循环嵌套可能导致代码可读性变差,尽量保持代码简洁和易于理解。

通过不断实践和练习,你将能够熟练掌握Java中的循环结构,并编写出高效、稳定的代码。

4.跳转语句

Java中的跳转语句允许程序在执行过程中改变其正常的顺序流程。这些语句主要用于条件判断、循环控制以及从多层嵌套结构中快速退出。Java中的跳转语句主要包括以下几种:

  1. break语句

    • break语句用于完全终止其所在的循环或switch语句。当遇到break时,程序会立即退出该循环或switch语句,继续执行其后的代码(如果有的话)。

    • 示例

      for (int i = 0; i < 10; i++) {  
          if (i == 5) {  
              break; // 当i等于5时,终止循环  
          }  
          System.out.println(i);  
      }
      
  2. continue语句

    • continue语句用于跳过当前循环的剩余部分,并开始下一次循环的迭代。它不会终止循环,只是跳过当前迭代的剩余部分。

    • 示例

      for (int i = 0; i < 10; i++) {  
          if (i % 2 == 0) {  
              continue; // 跳过偶数,不打印  
          }  
          System.out.println(i);  
      }
      
  3. return语句

    • 虽然return语句通常与方法的返回值相关联,但它也可以被视为一种形式的跳转语句,因为它会立即退出当前方法,并将控制权返回给方法的调用者。在void类型的方法中,return语句不返回任何值,但同样会退出方法。

    • 示例

      public int findMax(int[] numbers) {  
          int max = numbers[0];  
          for (int num : numbers) {  
              if (num > max) {  
                  max = num;  
              }  
              if (num < 0) {  
                  return -1; // 如果找到负数,立即返回-1  
              }  
          }  
          return max;  
      }
      
  4. 标签(Label)语句(不常用)

    • Java还支持标签(Label),它允许你使用breakcontinue语句来跳出多层嵌套循环或switch语句。不过,由于这种用法可能会导致代码难以理解和维护,因此并不推荐频繁使用。

    • 示例

      outerLoop:  
      for (int i = 0; i < 10; i++) {  
          for (int j = 0; j < 10; j++) {  
              if (i * j > 10) {  
                  break outerLoop; // 跳出外层循环  
              }  
          }  
      }
      

使用这些跳转语句时,应谨慎考虑它们对程序可读性和维护性的影响。过度使用跳转语句可能会使代码逻辑变得复杂且难以跟踪。

5.绘制程序流程图

绘制程序流程图是软件工程中的一个重要步骤,它帮助开发者理解和设计程序的逻辑结构。流程图通过图形化的方式展示了一系列步骤和决策,这些步骤和决策描述了程序如何执行。以下是绘制程序流程图的基本步骤和常用符号:

基本步骤

  1. 理解程序逻辑:首先,你需要彻底理解程序的逻辑,包括输入、处理过程和输出。
  2. 确定关键步骤和决策点:识别出程序中所有重要的操作、计算、数据处理步骤以及决策点(如条件判断)。
  3. 选择符号:根据流程图的标准符号库(如ISO 5807标准),选择合适的符号来表示不同的程序元素。
  4. 绘制流程图
    • 使用矩形表示处理步骤(如计算、赋值等)。
    • 使用菱形表示决策点(条件判断)。
    • 使用平行四边形表示输入/输出操作。
    • 使用箭头连接各个符号,表示流程的方向。
    • 可以使用圆形表示开始和结束。
  5. 审核和修改:绘制完成后,仔细检查流程图,确保它准确地反映了程序的逻辑。根据需要进行修改。

常用符号

  • 矩形:表示处理步骤或计算。
  • 菱形:表示决策点或条件判断。
  • 平行四边形:表示输入/输出操作(尽管有些情况下输入输出操作也会用矩形表示,并标注“输入”或“输出”)。
  • 箭头:表示流程的方向。
  • 圆形:开始(实心圆)和结束(空心圆)。
  • 流线:连接流程图中各元素的线条,表示程序执行的顺序。
  • 注释框(可选):用于添加说明性文本,帮助理解流程图。

示例

假设你有一个简单的程序,该程序要求用户输入两个数字,然后判断这两个数字是否相等,如果相等则输出“相等”,否则输出“不相等”。

流程图示例

  1. 开始(实心圆)

  2. 输入第一个数字(平行四边形)

  3. 输入第二个数字(平行四边形)

  4. 判断

    两个数字是否相等(菱形)

    • 如果

      ,则

      • 输出“相等”(平行四边形)
      • 结束(空心圆)
    • 如果

      ,则

      • 输出“不相等”(平行四边形)
      • 结束(空心圆)

工具

绘制流程图可以使用多种工具,包括纸笔、白板和专用的软件工具(如Visio、Lucidchart、Draw.io等)。这些工具提供了丰富的符号库和绘图工具,可以方便地绘制复杂的流程图。

标签:语句,控制,循环体,示例,int,流程,while,循环
From: https://www.cnblogs.com/tubby233/p/18329916

相关文章

  • 有没有办法让这个 if 语句只运行一次?
    我正在尝试制作一个脚本,让玩家每100分获得5条生命。它确实有效,但是有点太好了。当我运行代码时,当我达到100分时,它不会停止给予生命,只有当我获得更多分数时才会停止。这是我正在使用的代码:defincrease_lives():globallivesglobalscoreglobalextral......
  • 迭代的 Codility 课程“使用以逗号结尾的打印语句”
    我无法理解为什么Python语言包含逗号我尝试在IDE中运行代码示例但失败以上就是本课的内容。请检查img在此处输入图像描述我想知道课程是错误的还是我缺乏Python知识我想知道课程是错误的还是我缺乏Python知识我想知道课程是错误的还是我缺乏Python知识你......
  • 912、基于51单片机的温度控制(PID,模拟控制,除雾器)
    完整资料或代做滴滴我(有偿)目录一、设计功能二、proteus仿真三、原理图四、程序源码五、资料包括一、设计功能设计中镜片除雾器,当温度过低时启动镜片上的加热膜进行加热,从而实现对镜片上温度的控制,实现只能除雾;保持镜片温度为25度。二、proteus仿真三......
  • 计算机毕业设计实现流程,看这篇就够了(1.2w字超详细流程)
    计算机专业毕业设计实现流程 目录如何完成毕业设计选题提交毕业设计任务书完成系统分析和系统设计完成项目编码工作撰写论文项目答辩 1.完成毕业设计选题选题的类型计算机毕业相关的设计最近几年类型比较多的题目为:XX管理系统、XX网站建设、XX小程序设计与实现、XX公......
  • 【版本控制系统Git】Git的基本操作与工作流程
    版本控制系统GitGit的基本操作与工作流程目录引言Git概述Git的基本操作安装Git配置Git创建仓库常用命令Git的工作流程克隆仓库分支管理提交更改合并分支解决冲突最佳实践结论引言在现代软件开发中,版本控制系统(VCS)是不可或缺的工具。它能够帮助开发团队管理代码的......
  • 简单介绍plc如何控制电机正反转
    PLC(可编程逻辑控制器)控制电机正反转的过程可以通过以下步骤清晰地表示和归纳:一、了解电机正反转工作原理电机正反转是指电机能够实现顺时针和逆时针旋转的工作状态。通过改变电机内部线圈中电流的方向,可以实现电机的正反转。当电流方向与磁场方向一致时,电机顺时针旋转;当电......
  • 干货!全网最权威最全面介绍网络短剧上线资质以及备案流程
    今天,小编给大家详细梳理汇总一个全网最权威最全面的介绍网络微短剧上线所需要的资质,以及短剧备案流程到底是怎么样的?100%内行人实战总结的干货,希望对广大短剧从业者有所帮助。一、从事网络微短剧需要哪些资质?1、广播电视节目制作经营许可证(必备)根据《广播电视节目制作经营管......
  • ros2 自定义一个控制器
    在ROS2中,自定义一个控制器并进行使用涉及几个步骤,包括编写控制器代码、配置控制器参数、编写控制器启动文件以及在运行时加载和使用控制器。以下是一个详细的步骤指南:1.编写控制器代码首先,创建一个控制器类,该类继承自controller_interface::ControllerInterface。下面是一......
  • Spring 前后端数据交互到数据库流程
            前端通过HTTP请求(如AJAX、Fetch或Axios等)向后端发送数据请求。后端Spring框架接收到请求后,由控制器(Controller)负责解析请求,并根据请求类型(如GET、POST等)和路径调用相应的服务(Service)。服务层处理业务逻辑,可能涉及调用数据访问层(DAO)来操作数据库。数据访问层使......
  • 【PyCharm】PyCharm 2024.1 的最新变化-版本控制集成
    目录更强大的VCS支持Git、SVN和Mercurial的改进分支管理冲突解决提交历史更强大的VCS支持PyCharm2024.1在版本控制系统的集成方面进行了显著的改进,增强了对Git、Subversion(SVN)和Mercurial的支持。这些改进旨在提高开发者的效率,并使版本控制操作更加直......