Paul_Oconnor
2015-11-01 13:46
i,j,k的关系不是很明白啊。。。能讲讲吗?
首先,最外的for语句是用变量i来控制循环的,这是的i代表最多输出几行语句,是用来控制行数的,这里需要注意的是变量i是从1开始循环的,从1循环到5共需要4次,因此共输出了四行的数据;
接下来就是依托变量j来进行的循环了,而这个循环是用来控制输出空格的,其实你如果这个直观的看是有点迷惑的,你可以用鼠标吧输出的结果也就是那个图形选中,这个时候你就会发现其实每一行都是有空格的,而且分别为4个,3个,2个,1个,这样也就解释了这个循环,其实还有个更简单直观的方法,可以把这个for循环中的输出语句也就是printf(" "); 换成printf("-");是不是更加的直观了呢,
而最后一个循环,由变量k来控制,是用来输出‘*’这个符号的,你可以观察一下,从第一行到最后一行分别为1,3,5,7,相信你已经看出来这是一个有规律增长的,因此我们可以通过一个公式来控制他的输出,而这个公式就是为2*i-1;其中的i就是当前的行数,你可以带个数试一下,
全手打,求采纳,有疑问可加我QQ1669447682
看看这个http://www.imooc.com/qadetail/95457
C语言入门
926210 学习 · 20797 问题
相似问题