热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

第5章程序控制结构

​5.1 程序流程控制介绍​​​​​​​     三大流程控制语句        顺序控制;分支控制;循环控制5.2 顺序控制​

5.1  程序流程控制介绍​​​​​​​

        三大流程控制语句

        顺序控制;分支控制;循环控制

5.2  顺序控制

编辑

5.3  分支控制 if-else

        分支控制分为:单分支if;双分支if- else;多分支if- else if -…- else

        单分支 if

if(条件表达式){
执行代码块;(可以有多条语句)
}

编辑

5.4  双分支 if - else

if(条件表达式){
执行代码块1;
}else{
执行代码块2;
}

编辑

         多分支  if- else if -…- else

if(条件表达式1){
执行代码块1;
}else if (条件表达式2){
执行代码块2;
}
……
else{
执行代码块n;
}

        特别说明:1)多分支可以没有else,如果所有的表达式都不成立,则一个执行入口都没有  2)如果有else,如果所有表达式都不成立,则默认执行else代码块 3)当表达式1不成立的时候才去判断表达式2,以此类推。 

5.5  嵌套分支

        在一个分支结构中有完整的嵌套了另一个完整的分支结构(最多不要超过3层)

if () {
if () {

}else {

}
}

5.6  switch分支结构编辑

         细节

        1. 表达式数据类型,应和case后的常量类型一致,或者是可以自动转换的类型

        2. switch中表达式的返回值必须是:byte,short,int,char,enum(枚举),String 

        3. case子句中的值必须是常量,而不能是变量

        4. default子句是可选的,当没有匹配的case时,执行default

        5. break语句用来在执行完一个case分支后使程序跳出switch语句块;如果没有写break,程序会顺序执行到switch结尾,直到遇到break

5.7  for循环控制

if (循环变量初始化;循环条件;循环变量迭代){
循环操作(可以多条语句)
}

        细节

        1. 循环条件是返回一个布尔值的表达式

        2. for(;循环条件;) 初始化和变量迭代可以写到其他地方,但;不能省略

        3.循环初始值可以有多条初始化语句,但要求类型一样,逗号隔开;循环变量迭代一样

//打印1-100 之间所有是9的倍数的整数,统计个数 及 总和
Public class Exercise {
public static void main(String[] args){
int sum = 0;
int total = 0;
for(i = 1; i <= 100; i++){
if(I % 9 == 0){
System.out.println(i);
sum += I;
total++;
}
}
System.out.println("和" + sum + "个数" + total);

}
}

 5.8  while循环控制

while(循环条件){

循环体(语句);
循环变量迭代;
}

        细节

         1. 循环条件是返回一个布尔值的表达式

        2. while循环是先判断在执行

5.9  do..while循环

循环变量初始化;
do{
循环体(语句);
循环变量迭代;
}while(循环条件);

        细节

         1. do  while 为关键字,最后while有;

        2. 先执行,在判断,一定会至少执行一次

5.10  多重循环控制(重难点)

         1.  非为外层循环和内层循环,前面学的循环都可以当内层或外层循环,建议一般使用2层 

        2. 实质上嵌套循环,就是把内层循环当作是外层循环的循环体,当内层循环为false时,才完全跳出内层循环,才可结束外层的当次循环,开始下一次的循环

        3. 假设外层循环3次,内层循环4次,则一共需执行12次

//九九乘法表
public class Exercise {
public static void main(String[] args]{
for(int I = 1; I <= 9; I++){
for(int j = 1; j 1; j++){
System.out.println(I + "*" + j + "=" + I*j);
}
}
}
}

5.11  跳转控制语句 break

        break语句用于终止某个语句块的执行,一般用于switch或者循环中

        细节

编辑

5.12  跳转控制语句 continue

        continue语句用于结束本次循环,继续执行下一次循环;标签使用规则同break

5.13  跳转控制语句 return

        return使用在方法,表示跳出所在的方法 



推荐阅读
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • C# 7.0 新特性:基于Tuple的“多”返回值方法
    本文介绍了C# 7.0中基于Tuple的“多”返回值方法的使用。通过对C# 6.0及更早版本的做法进行回顾,提出了问题:如何使一个方法可返回多个返回值。然后详细介绍了C# 7.0中使用Tuple的写法,并给出了示例代码。最后,总结了该新特性的优点。 ... [详细]
  • 本文详细介绍了Java中vector的使用方法和相关知识,包括vector类的功能、构造方法和使用注意事项。通过使用vector类,可以方便地实现动态数组的功能,并且可以随意插入不同类型的对象,进行查找、插入和删除操作。这篇文章对于需要频繁进行查找、插入和删除操作的情况下,使用vector类是一个很好的选择。 ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了logistic回归(线性和非线性)相关的知识,包括线性logistic回归的代码和数据集的分布情况。希望对你有一定的参考价值。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 本文介绍了如何将CIM_DateTime解析为.Net DateTime,并分享了解析过程中可能遇到的问题和解决方法。通过使用DateTime.ParseExact方法和适当的格式字符串,可以成功解析CIM_DateTime字符串。同时还提供了关于WMI和字符串格式的相关信息。 ... [详细]
  • Oracle分析函数first_value()和last_value()的用法及原理
    本文介绍了Oracle分析函数first_value()和last_value()的用法和原理,以及在查询销售记录日期和部门中的应用。通过示例和解释,详细说明了first_value()和last_value()的功能和不同之处。同时,对于last_value()的结果出现不一样的情况进行了解释,并提供了理解last_value()默认统计范围的方法。该文对于使用Oracle分析函数的开发人员和数据库管理员具有参考价值。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • 从零学Java(10)之方法详解,喷打野你真的没我6!
    本文介绍了从零学Java系列中的第10篇文章,详解了Java中的方法。同时讨论了打野过程中喷打野的影响,以及金色打野刀对经济的增加和线上队友经济的影响。指出喷打野会导致线上经济的消减和影响队伍的团结。 ... [详细]
  • 猜字母游戏
    猜字母游戏猜字母游戏——设计数据结构猜字母游戏——设计程序结构猜字母游戏——实现字母生成方法猜字母游戏——实现字母检测方法猜字母游戏——实现主方法1猜字母游戏——设计数据结构1.1 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • Java学习笔记之面向对象编程(OOP)
    本文介绍了Java学习笔记中的面向对象编程(OOP)内容,包括OOP的三大特性(封装、继承、多态)和五大原则(单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则)。通过学习OOP,可以提高代码复用性、拓展性和安全性。 ... [详细]
  • 开发笔记:Java是如何读取和写入浏览器Cookies的
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Java是如何读取和写入浏览器Cookies的相关的知识,希望对你有一定的参考价值。首先我 ... [详细]
author-avatar
手机用户2502861877
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有