循环结构嵌套

Posted taoxu1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了循环结构嵌套相关的知识,希望对你有一定的参考价值。


循环结构嵌套

什么是二重循环:

一个循环体内又包含一个循环

外层循环循环一次,里层循环循环一遍

@Test
public void test05(){
//打印一个五行五列的*
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
System.out.print("*");
}
System.out.println();
}
}

例子:


@Test
//打印九九乘法表
public void test10(){
for(int i =1;i<=9;i++){  
for(int j=1;j<=i;j++){
System.out.print(i+"*"+j+"="+i*j+" ");
}
System.out.println();
}
}

 

冒泡排序:

每次比较相邻两数

小的交换到前面

每轮结束后最大的数交换到最后

 

例如有五个数值的数组:

 

用二重循环将5个数字升序排序

5个数字如何存放:

数组,数组.length = 5

控制比较多少轮:

外层循环,循环变量 i

控制每轮比较多少次:

内层循环,循环变量 j

交换数据

例子:

@Test
public void test11(){
int[] num = {34,45,32,15,59};
//外循环表示的是轮数
/*
* 原数组                   34 45 32 15 59
* 一共进行4轮:一共五位(num.length位)确定4位(num.length-1位)就能确定排序
*
* 第一轮确定最后一位,因为两两比较,大的向后移,进行四次比较(一共五位,到第四位可以和第五位比较)
*
* 第一轮       第一次 34 45 32 15 59
* 第一轮       第二次 34 32 45 15 59
* 第一轮       第三次 34 32 15 45 59
* 第一轮       第四次 34 32 15 45 59
*
* 第二轮确定倒数第二位,进行三次比较(第一轮已经确定了一位)
*
* 第二轮       第一次 32 34 15 45 59
* 第二轮       第二次 32 15 34 45 59
* 第二轮       第三次 32 15 34 45 59
*
* 第三轮确定倒数第三位,进行两次比较
*
* 第三轮       第一次 15 32 34 45 59
* 第三轮       第二次 15 32 34 45 59
*
* 第四轮确定倒数第四位,进行一次比较     所以内循环应为(num.length-1-i)次
*
* 第四轮       第一次 15 32 34 45 59
*
*
*
*
*/
for(int i =0;i<num.length-1;i++){
//内循环表示的是每轮比较的次数
for(int j=0;j<num.length-i-1;j++){
if(num[j]>num[j+1]){
int temp = num[j];
num[j] = num[j+1];
num[j+1] = temp;
}
}
}
System.out.println("排序后:");
for(int i=0;i<num.length;i++){
System.out.print(num[i]+" ");
}
}

 

以上是关于循环结构嵌套的主要内容,如果未能解决你的问题,请参考以下文章

巧用for循环嵌套结构

循环结构的问题

JS中的循环结构循环嵌套以及函数介绍

C#:循环遍历嵌套结构的成员对象

java的三种循环结构与循环嵌套

Java学习笔记2.5.3 循环结构 - 循环嵌套