A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1黑马币
前天学的for循环  打印三角形  现在都OK了 但是现在关于for的嵌套使用  还是不理解  求指导  讲白话文    讲的明白些   谢谢
另外  还在积攒黑马币我也   给不了太多   所以...........




Snip20150830_5.png (119.83 KB, 下载次数: 122)

以这个为例 (今天敲的)但是不给力啊

以这个为例 (今天敲的)但是不给力啊

26 个回复

正序浏览
外层套里层,外层是 i,里层是 j,先控制 i,在 i 里面控制 j
回复 使用道具 举报
清明月雨上 发表于 2015-9-1 12:39
外层循环就像翻书的,每一页,内层循环像每一页的每一行字 冯佳老师这句话说的非常好,一起理解一下吧 ...

学习了,特别好的理解
回复 使用道具 举报
打错了  不好意思
形象的理解就是  外层for循环就是控制纵坐标(行数)    内层for循环控制横坐标 (每列)
你要一步一步去分析   当行确定了   内层for循环(变量每增加1)就向右走一步 判断满足条件的就打印
回复 使用道具 举报
形象的理解就是  外层for循环就是控制横坐标纵坐标(行数)    内层for循环控制纵坐标 (每列)
你要一步一步去分析   当行确定了   内层for循环(变量每增加1)就向右走一步 判断满足条件的就打印
回复 使用道具 举报
purgatory 发表于 2015-9-6 15:15
就像小明有三个女朋友,她们都发现了彼此的存在,准备排队每人扇小明三十耳光,三十耳光就是内循环,三个女朋友 ...

大神啊   瞬间脑补   
回复 使用道具 举报
就像小明有三个女朋友,她们都发现了彼此的存在,准备排队每人扇小明三十耳光,三十耳光就是内循环,三个女朋友就是外循环,扇完了三十耳光才换人
回复 使用道具 举报
public static void main(String[] args){
                for(int k=0;k<5;k++){
                        for(int i=0;i<9-k;i++) System.out.print(" ");
                        for(int i=0;i<k+1;i++) System.out.print("*");
                    System.out.println();
        }
}
回复 使用道具 举报
http://v.youku.com/v_show/id_XOTUwNjcxNjgw.html?from=s1.8-1-1.2   话不多说,解决办法及思路这里都有
回复 使用道具 举报
这种东西都是看个人的理解方法,大神很多,解释很多,,选择属于自己的方法很重要。
回复 使用道具 举报
我是进来学习的
回复 使用道具 举报
多练习一下答应三角形和倒立三角形,还有九九乘法表,理解外层控制行,内层控制列
回复 使用道具 举报
想打那样的,就是要内循环要两个for循环咯,一个是空格,一个是星。  我觉得你应该都理解的,只是一下换不过来。。外循环控制行数,内循环控制每行的个数。。所以里面的内循环两个,先是空格,然后星星。
回复 使用道具 举报
啊啊啊啊 来拿黑马币
回复 使用道具 举报
首先你得知道for循环是怎么执行的,当代码进入外层for 之后,如果进入内层for那就把内层for执行完,然后再出来,判断外层for的条件是否还满足,如果还满足,那继续进入;知道外层for条件不满足,才离开
回复 使用道具 举报
先打印空格,再打印*,主要是思路。
回复 使用道具 举报
llo 中级黑马 2015-9-2 18:36:43
10#
你哪个地方有问题就在那个范围内   打上断点   执行看     看那个地方不懂 就多看几次它的执行步骤就可以了      这个还是靠自己理解比较好  
回复 使用道具 举报
你先打印个九九乘法表再说,理解应该从简单到复杂
回复 使用道具 举报
for循环设计要考虑好内外循环控制的是你要解决问题的哪些增量,就比如说打印三角,先要想好在屏幕上打印三角,肯定有空格的地方,有输出“*”号的地方,通过观察,发现其中的数字数学变化规律,并将这个规律带入到循环中,看看内循环每次要怎么变外循环要怎么变,再设计一下增量的初始值,就Ok了!
纯手打,这是原理思想,我也是努力赚分中,希望给我吧
回复 使用道具 举报
循环控制呢就像搭积木一样正的就是++要倒过来就是--,要想达到预定的排列,先看哪部分是在循环,没有循环的部分肯定是特例,怎么办呢?if出来就行了撒。比如你要想的那个效果从第二行起就是正常的三角,对你来说肯定没问题,第一行不就是特别的例子吗?怎么办?if(i=0)不循环,直接打印嘛。{:2_40:}循环还是很考验逻辑思维能力的。可以多去找点数学上的问题通过Java代码来实现~~{:2_40:}
回复 使用道具 举报
for(int i = 0; i < 10; i ++){
   //循环体
}
程序首先进来执行 int i = 0;(这个在整个循环中只执行一次)
然后判断 i < 10 ; 满足之后 执行 循环体!!!
循环体执行完毕之后(如果没有break)则会执行 i++ 相当于 i = i + 1;然后会再去判断 i < 10
纯手打 ,望采纳
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马