黑马程序员技术交流社区

标题: for 循环的嵌套使用 求大神讲解 [打印本页]

作者: 李国峰    时间: 2015-8-31 22:26
标题: for 循环的嵌套使用 求大神讲解
前天学的for循环  打印三角形  现在都OK了 但是现在关于for的嵌套使用  还是不理解  求指导  讲白话文    讲的明白些   谢谢

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

for循环打印三角形

for循环打印三角形

作者: Music_棍棍    时间: 2015-8-31 22:43
共同学习  多练习 慢慢会懂的 悄悄的告诉你其实我也是模棱两可
作者: bdw9005    时间: 2015-8-31 23:08
地球绕着太阳旋转,而月球在绕着地球旋转,当地球绕着太阳旋转一年,月球已经绕着地球旋转了365天,地球绕太阳旋转相当于外循环(大循环),月亮绕地球旋转相当于内循环(小循环),不知这样描述是否合适
作者: pyy061    时间: 2015-8-31 23:13
外层循环控制行数,内层循环控制列数,你图上的那种,就是在敲*之前先敲出来空格
找规律嘛,找每一行的空格数和行数的关系,用循环敲出来
再找每一行的*数和行数的关系,用另一个循环敲出来
作者: veggiegfei    时间: 2015-9-1 00:11
for循环超级重要
作者: tangbinbin    时间: 2015-9-1 08:51
外层的for循环控制行数,内层的for循环控制列数,他是在行数的基础条件之上,理解下for循环执行的过程原理,学会看流程图,
for(i=0;i<5;i++)
for(j=0;j<=i;j++)   
printf("*");
执行过程:i=0,然后判断 i<5,满足条件则跳到到下一层for循环,j=0,判断j<=i,满足条件则执行循环体里面的语句打印  ”*“,执行完以后返回来j++,此时j=1,i=0判断j<=i,条件不成立,终止循环,返回到上一层for循环条件,执行i++,i=1,然后同样的方式执行下面的语句。

for(表达式1;表达式2;表达式3)






作者: 堕落天使    时间: 2015-9-1 09:19
直接上代码,测试成功的。
你的问题是每行的*的个数没有算对。
int main(int argc, const char * argv[]) {
    for (int i = 0; i<6; i++) {
        //第一个内循环控制空格。
        for (int j = 0 ; j<6-i; j++) {
            printf(" ");
        }
        //第二个内循环控制*的个数。
        //注意每行*的个数和行数的关系 2*i-1。
        for (int k = 0; k<2*i-1; k++) {
            printf("*");
        }
        printf("\n");
    }

作者: 唐肖虎    时间: 2015-9-1 11:41
外部循环一次,内部循环完,再外部循环,内部又循环完。
作者: smilejoke    时间: 2015-9-1 21:27
加个断点 慢慢点点看看,你就会看清楚怎么执行的了
作者: 同舟ing    时间: 2015-9-1 21:29
这个学过,但是没有深入了解过!自己慢慢摸索吧!
作者: 克莱斯勒    时间: 2015-9-1 21:41
循环这块感觉还是如意大师讲得比较透彻
作者: huahaoL    时间: 2015-9-1 21:50
知道每行代码的是干什么的就OK,  一定一步一步的看
作者: 靳小龙    时间: 2015-9-1 22:25
来。。。学习学习
作者: sunw    时间: 2015-9-1 22:29
还没学透  




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2