java高手进,双重for循环应该怎么理解!

publicclassRRR{publicstaticvoidmain(String[]args){System.out.println("九九乘法表:");for(in... public class RRR
{
public static void main(String[] args)
{
System.out.println("九 九 乘 法 表: ");
for (int i = 1; i <= 9; i++)
{
for (int j = 1; j <= i; ++j)
{
System.out.print(j + "*" + i + "=" + i * j + " ");
}
System.out.println("");
}
}
}
上面那个“九九乘法表”要怎么理解啊?我想问当i自增到9的时候,打印出1*9=9;那在返回for (int j = 1; j <= i; ++j) 循环时,条件为假,那它是怎么打印出2*2=4的?
能详细点说吗?
展开
 我来答
石原里美fUOm6
2011-07-19 · TA获得超过105个赞
知道答主
回答量:98
采纳率:0%
帮助的人:51.3万
展开全部
这就像时钟一样,第一层的循环看做时针,第二层循环看做分针,分针转一圈,时针才动一下,也就是说,第二层循环循环一次,第一层循环才执行了一下,总共要执行N下。
沙寄灵0IO4b1
2011-07-17
知道答主
回答量:12
采纳率:0%
帮助的人:9.3万
展开全部
首先i等于1,i<=9满足,执行第一个循环的主体,即运行第二个循环,输出1*1=1后,j+1为2,不满足j <= i 条件,第二个循环跳出,又运行第一个循环,此时i+1为2,满足条件,又运行第二个循环,输出2*1=2,再j+1为2,满足j <= i 又输出2*2=4,
如此循环,直到条件不满足跳出
追问
没有输出2*1=2这行。。。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
oolgloo
推荐于2017-09-21 · TA获得超过2636个赞
知道小有建树答主
回答量:604
采纳率:0%
帮助的人:663万
展开全部
双重循环跟单个循环无非一样的。
且一个循环一个循环分析,
关键看每个循环的极限值。
看这里!
i:=1
j:=1
1*1 = 1
------
i:=2
j:=1~2 //注意j的范围是1~2
1*2 = 2
2*2 = 2 //就这了
------
...
------
i:=9
j:=1~9
1*9 = 9
2*9 = 18
..
9*9 = 81
追问
为什么它的是:=1~2 //注意j的范围是1~2  ?
追答
for (int i = 1; i <= 9; i++) 
{
for (int j = 1; j <= i; ++j)
------------
当i=2时,
第二个for变为:
for (int j=1; j<=2; ++j) //即j:=1~2
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
benhui3355
2011-07-17
知道答主
回答量:14
采纳率:0%
帮助的人:16.1万
展开全部
for (int i = 1; i <= 9; i++)
{
for (int j = 1; j <= i; ++j)
{
}
}
//其实这里的意思是外层循环一次 内层要循环i次
还有不可能输出2*1 这是应为内层的循环所决定的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
云起故里
2011-07-18 · TA获得超过352个赞
知道小有建树答主
回答量:185
采纳率:0%
帮助的人:117万
展开全部
i循环控制行,J循环控制列
J循环条件不满足时跳出,再执行I循环
举例:进入I循环,i=2,进入J循环,J=1,输出 1*2=2,J++,J=2,2*2=4,J++,J=3,跳出J循环,进入I循环,I=3。。。。。。
明白了?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(9)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式