如何将两个for循环嵌套使用,要求内层循环结束,外层也一起结束。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将两个for循环嵌套使用,要求内层循环结束,外层也一起结束。相关的知识,希望对你有一定的参考价值。

1、首先打开excle表格,进入VBA的编程界面,新建一个子程序loopcolor。

2、然后是定义几个变量,都是整数型。

3、为mycolor赋值。

4、对myrow进行循环。

5、在myrow的循环里面再嵌套另外一个循环mycol。

6、再循环里面,分别选中单元格,并为这些单元格填充颜色。

7、最后运行这个程序,然后回到excle的界面,就可以看到被填充的颜色块了。

参考技术A

1、新建一个html文件,命名为test.html,用于讲解在js中怎么结束当前for循环。

2、在test.html文件内,使用input创建五个输入框,并分别设置不同的value值。

3、在输入框的最下面,创建一个按钮,当按钮被点击时,执行is_empty函数。

4、在js标签内,创建is_empty函数,在函数内初始化一个str变量。

5、在is_empty函数内,使用getElementsByName()方法通过name属性获得所有的输入框对象。

6、在浏览器打开test.html文件,点击按钮,查看执行的结果。

参考技术B 两个for循环嵌套使用实在太常见了,你可以在外层for循环设个变量,比如boolean flag = false,在内层for循环结束时把flag 设为true,然后在外层for循环判断这个变量,如果为true就break,就行了。 参考技术C for(int i=0;i<10;i++)
for(int j=10;j>i;j++)
System.Out.Println("success");


break;

注释:使用break,可以在执行内层循环时,跳出外层循环
参考技术D 我之前也遇到这个问题了。这个叫跳出双重for循环。正常使用break的话只能跳出内层循环,想跳出双重循环可通过label跳出.

跳出两层:
labe:for(int i=0;i<10;i++)
for(int a=0;a<10;a++)
break labe;//跳出整个循环

Educoder - Java入门 - 循环结构进阶各关卡题目总结

第1关:for循环的进阶使用-嵌套循环(1)

1、编程要求:

  是时候检验一下了,在start-end区域中填充代码打印出一个10*10的矩形,效果如下:

  注意:每次只允许输出一颗星*

 

2、测试效果:

  技术图片

 

 

 

3、程序设计思路

 (1)利用for的嵌套循环,外层代表行,内层代表列,每一个内层结束后换一行。

 

4、程序实现:

package step1;

public class ForPractice1 {
    public static void test() {
        /*****start*****/
        for(int i=0;i<10;i++){
            for ( int j= 0;j <10; j++){
            System.out.print("*");
            }
            System.out.println(); 
            }                
        /*****end*****/
    }
}

 

 

第2关:for循环的进阶使用-嵌套循环(2)

1、编程要求:

  请在start-end区域中填充代码,实现两个三角形的打印输出,效果图如下:

 

2、测试效果:

  技术图片

 

 

 

3、程序设计思路:

 (1)采用for的嵌套循环,和上一题的矩形不同,并不是每行都有星,所以内层循环数要发生变换。

 (2)考虑行和列的关系,行数等于列的*数,所以内层循环的次数应该与行数相同。

 (3)分割线上下就是用自减运算符代替自增运算符,变量初始值发生改变。

 

4、程序实现:

package step2;

public class ForPractice2 {
    public static void main(String[] args) {
        /*****start*****/        
        //在这里打印出正三角形 
        for(int x=0;x<10;x++){
            for(int y=0;y<=x;y++){
              System.out.print("*");
            }
            System.out.println();
        }                                
        System.out.println("——————————我是华丽的分界线——————————");
        //在这里打印出倒三角形
        for(int x=10;x>0;x--){
            for(int y=x;y>0;y--){
              System.out.print("*");
            }
            System.out.println();
        }        
        /*****end*****/
    }
}

 

 


第3关:99乘法表

1、编程要求:

  在右侧Begin-End区域中填充代码,打印输出一个99乘法表,效果图如下:

  提示:文中两个表达式之间的间隔使用的是 制表符;

 

2、测试要求:

  技术图片

 

 

 

3、程序设计思路:

 (1)注意观察,和上一题进行比较,采用for的嵌套循环时,循环次数的规律和上一题是一样的。

 (2)注意第二个乘数是固定,所以第二个乘数应当是外层变量。

 

4、程序实现:

package step3;

public class ForPractice3 {
    public static void main(String[] args) {
        /*****start*****/
        for(int i=1;i<10;i++){
            for(int j=1;j<=i;j++){
                System.out.print(j+"*"+i+"="+i*j+"	");
            }
            System.out.println();
        }    
        /*****end*****/
    }
}

 

 


第4关:综合练习之ATM取款机

1、编程要求:

  在右侧编辑器Begin-End中编写代码,完成和效果图一致的功能。

 

2、测试效果:

  我会对你的程序进行若干次测试,以此来判断你是否完成了本关任务。

  第一次测试会输入: 100  2  999  100  1

  需要你的程序输出:

  技术图片

  注意:平台会输入数据,但是输入的数据不会显示在输出结果中,所以标红部分是我输入的部分,不需要你输出,

  其余部分都需要你进行打印输出,输出的符号除了单引号和双引号分号之外其他的全都要使用中文标点。

  即预期输出为:

  欢迎使用中国人民银行ATM取款机

  输入取款金额:

  剩余金额:900,是否继续(‘1‘:结束,‘2‘:继续):

  输入取款金额:

  目前余额:900无法满足您的取款需求!

  输入取款金额:

  剩余金额:800,是否继续(‘1‘:结束,‘2‘:继续):

  取款结束!

 

3、程序设计思路:

 (1)观察题目:若输入金额足够支付,则会产生是否继续选项。若不足以支付,不会产生继续选项,自动跳转到下一步取钱操作,所以存在continue跳出本轮循环。

 (2)需要循环辅助重复内部的一系列取钱操作,没有涉及到具体次数,所以采用while或者do...while都可以。

 (3)需要多个if语句用于判断是否进行对应操作。

 

4、程序实现:

package step4;

import java.util.Scanner;

public class ForPractice4 {
    public static void main(String[] args) {
        /*****start*****/
      int money = 1000;
      int cash = 0;
      int isornot = 0;
      Scanner input =new Scanner(System.in);
      System.out.println("欢迎使用中国人民银行ATM取款机");
      do {
          System.out.println("输入取款金额:");
          cash = input.nextInt();
          if(money >=cash) 
                 {
                  money=money-cash;
          }
          else {
                         System.out.println("目前余额:"+money+"无法满足您的取款需求!");
                 continue;
          }
          System.out.println("剩余金额:"+money+",是否继续(‘1‘:结束,‘2‘:继续):");  
          isornot=input.nextInt();
          if(isornot==1) 
                  {
                    break;}
                   }while(money>0);
                   System.out.println("取款结束!");
        
        /*****end*****/
    }
}

 

 

第5关:选择题

1、选择题答案:D  BC  B  

 

以上是关于如何将两个for循环嵌套使用,要求内层循环结束,外层也一起结束。的主要内容,如果未能解决你的问题,请参考以下文章

perl之文本文件的嵌套循环

c++两个嵌套的for循环使用continue?

两个for循环执行顺序

4循环嵌套和方法

实验三

Educoder - Java入门 - 循环结构进阶各关卡题目总结