1、循环结构

循环语句允许我们多次执行一个语句或一组语句(重执行语句)。

 2、while语句

只要给定条件为真,目标语句就会重复执行。

【格式】

while (循环条件){

语句;

}

【流程图】

【注意】while循环的关键点是循环可能永远不会运行。 当条件被测试并且结果为false时,循环体将被跳过,while循环之后的第一条语句将被执行。

【示例】

某同学围绕操场跑了200圈,请输出他的跑步记录。

【分析】

(1)输出跑步记录语句:System.debug('我在操场跑第'+N+'圈');将这条语句重复执行200遍。

(2)重复执行:需要一个计数器变量来记录执行的次数。计数器变量是用来控制循环次数的,也叫循环变量。

(3)计数器由变量的初值(比如从1开始计数),终值(计数到200,使循环条件为假),步长(增量或减量,每跑完一圈,计数器+1,循环变量更新)。

(4)从以上分析可以得出循环语句的三要素为:循环变量的初值、终值、步长。

(5)本题的循环变量times的初值为times=1,终值为times<=200,步长为1。

【示例】

求1-100之间能被5整除的数。

【分析】

(1)找出循环变量x的三要素:初值为x=5,终值为x<=100,步长为5。

(2)重复执行的语句:输出能被5整除的数。

【示例】

某公司的2010年年销售量为800万元,假如每年按25%的速度增长,到哪一年公司的年销售量能突破2000万。

【分析】

(1)找出循环变量saleNumbers的三要素:初值为saleNumbers=800万,终值为saleNumbers<2000万,步长为(1+0.25)。

(2)重复执行的语句:year=year+1,每年增长。

 3、do...while语句

一个do ... while循环类似于一个while循环,do ... while循环在循环底部检查其条件。

【格式】

do{

语句;

}while (循环条件

【流程图】

【注意】do...while循环的关键点是循环至少执行一次。即使条件为false,它将至少执行一次代码块。

【示例】

求1-100之间能被5整除的数。

 4、for语句

一个for循环类似于一个while循环。

【格式】

for(初始化;条件;计数){

语句;

}

【流程图】

【注意】for语句的关键点:

(1)先执行一次初始化语句(注意只执行一次)
(2)再判断条件是否成立
         如果成立执行语句块,再执行执行计数语句。重新返回(2)判断条件是否成立,成立执行语句块,再执行计数语句,如此直到条件不成立则跳出循环。

         如果条件不成立,则不执行语句块也不执行计数语句直接跳出循环。

【示例】

求1-100之间能被5整除的数。

 5、多重循环

在一个循环里(外循环)嵌套了另一个循环(内循环),称为多重循环。

【示例】

打印10个*号后,再打印一个%号,直到打印5个%为止。如图:

**********%**********%**********%**********%**********%

【分析】

(1)先打印10个*号,即将System.debug('*')语句重复10遍。

(2)再打印1一个%号,System.debug('%')

(3)将(1),(2)重复5遍即可。

【示例】

计算下列公式的值。

【分析】

(1)外循环变量 i 的值从2-n,可以得出初值,终值和步长,将sum=sum+(1/ i 的 i 次方)重复执行n次。

(2)内循环计算出 i 的 i 次方,即将rule=rule*i 重复执行 i 次。

 5、中断循环

当循环条件为false时,循环会正常终止,有时我们在会循环正常终止前强制退出循环,称为中断循环。

  • 中断本次循环continue。

【示例】

输出1-20之间不能被3整除的数。

【补充】

(1)Math.mod是求余数,i 除以3的余数Math.mod(i,3)为0,i 能被3整除。

(2)=和==的区别:=是把右边表达式的计算结果保存到左边的变量里(赋值),==是判断左右两边的计算结果是否相等。

  • 中断整个循环break。

【示例】

输出1-20之间不能被3整除的数,如果找到一个能被3整除的数就结束循环。

【示例】

猜数游戏:给定一个1-10之间的数,由计算机来猜这个是什么数,猜中后输出猜数的次数。

Apex语言(五)循环结构的更多相关文章

  1. 【C语言】-循环结构-for语句

    for语句: for (表达式1;表达式2;表达式3) { 循环语句 } 表达式1 给循环变量赋初值 表达式2 为循环条件 表达式3 用来修改循环变量的值,称为循环步长. for语句的执行流程: 例: ...

  2. C语言之循环结构

    程序结构: 顺序结构 条件结构(分支结构) if结构,if-else结构 ,多重if分支结构,switch结构 循环结构:做重复的事情 while循环,do..while循环和for循环. 写循环结构 ...

  3. C语言基础-循环结构

    循环结构while while循环-图例 while循环-格式 while ( 条件 ) { 语句1; 语句2; .... } 如果条件成立,就会执行循环体中的语句(“循环体”就是while后面大括号 ...

  4. 【C语言】-循环结构-while语句

    while语句: while循环可实现"当型"循环,即当条件成立时,执行循环体.适合无法确定循环执行次数的情况. while (表达式) { 循环语句 } 注意: 表达式为循环控制 ...

  5. 【学习笔记】【C语言】循环结构-for

    1.使用: for (语句1; 条件; 语句2) {     循环体 }   语句1:初始化语句 语句2:增量语句(执行完循环体后再执行的语句)   1.for一开始就会执行一次语句1(整个for循环 ...

  6. 【学习笔记】【C语言】循环结构-while

    1. 简单使用 while ( 条件 ) {     语句1;     语句2;     .... } 如果条件成立,就会执行循环体中的语句(“循环体”就是while后面大括号{}中的内容).然后再次 ...

  7. C语言之循环结构 for(二)

    一 for循环的嵌套使用 for循环的嵌套语法: for(int i =0;i<10;i++){ for(int j=0;j<5;j++){ } } 一般用来打印平面,或者控制平面,或者说 ...

  8. C语言之循环结构 for(一)

    一 for循环的介绍 语法: for(表达式1;表达式2;表达式3){ 循环体; } 循环步骤: A.执行表达式1,执行完毕跳转到B B.判断表达式2的结果是否为真,如果为真,跳转到C,否则跳转到E ...

  9. C语言--单层循环结构

    一.PTA实验作业 题目1:最佳情侣身高 1.实验代码 int N, i; float height; char sex; printf("输入用户个数:\n"); scanf(& ...

  10. 【学习笔记】【C语言】循环结构-do while

    用法: while (条件) {     } do {   } while(条件);   while和do-while的区别 1.很多情况下,while和do while可以互换   2.while特 ...

随机推荐

  1. [bzoj3676]回文串[后缀数组+Manacher]

    后缀数组+Manacher #include <iostream> #include <cstdio> #include <cstdlib> #include &l ...

  2. poj 1698

    题意:爱丽丝喜欢拍电影,现在正好有N个公司找她拍电影,每部电影都指定在每周的星期几拍,要用D天拍完电影,最迟M个星期要拍完.问爱丽丝能不能拍完所有电影. 分析:350天各为一个顶点,每个顶点都有且只有 ...

  3. Java Json格式的字符串转变对象

    Java Json格式的字符串转变对象: 方法还是比较多的: 学习:https://my.oschina.net/heweipo/blog/386808 其中的jsonlib说明:http://www ...

  4. iOS开发使用Unwind Segue进行返回

    我们在之前的一篇博客中谈到怎样使用dismissViewControllerAnimation()的方法在iOS中返回,如今我们有一个更为方便的方法来实现界面跳转之后的返回操作.使用的是Unwind ...

  5. ZendFramework2学习笔记 表单过滤、表单验证

    ZF2有非常多内建的Filter和Validator组件,能够方便地对表单数据进行处理. Filter的作用是过滤表单数据.比如,去除一些空格,替换一些敏感词等. Validator的作用是检验表单数 ...

  6. 【Nginx】模块化设计

    高度模块化的设计是Nginx的架构基础.全部模块都是以ngx_module_t结构体表示,该结构体内部定义了7个回调方法.它们负责模块的初始化和退出.commands成员是一个包括有ngx_comma ...

  7. 3.CCFadeOutTRTiles,部落格效果,跳动的方块特效,3D瓷砖晃动特效,破碎的3D瓷砖特效,瓷砖洗牌特效,分多行消失特效,分多列消失特效

     1 TiledGrid3D //TiledGrid3D //CCFadeOutTRTiles * action = CCFadeOutTRTiles::create(2, CCSize(20,2 ...

  8. Getting Installation aborted (Status 7) ApplyParsePerms: lsetfilecon of /syst...【转】

    OTA升级失败:原文http://en.miui.com/thread-112197-1-1.html Do you get this "Status 7" error in Re ...

  9. Python 下的数据结构实现

    既然采用了 Python 编程语言实现数据结构,就要充分发挥 Python 语言的语法特性. 参考<Python 算法教程><数据结构与算法 -- Python 语言描述>: ...

  10. B1045 糖果传递 数学

    糖果传递,一开始就想到了n^2的模拟贪心算法,但是一看,数据范围太大,好像只有O(N)能过...没啥方法,只好看题解,之后发现,woc,还有这种操作? 这个题直接可以用数学证明... 证明如下: 首先 ...