本帖最后由 waterfoxjie 于 2015-3-10 10:10 编辑
你这个运行不起来吧 三个变量都赋值等于0的话 走不起来呀 改一下n的值吧 我改成了3来说下
int n = 3 ;
for (int i = 0 ; i<n ; i++)
{
for (int j = 0 ; j < n - i ; j ++)
{
printf("*");
}
printf("\n");
}
走这段代码的时候,首先是外层的for循环,第一次i=0,i<3条件成立,之执行for循环中的代码,到达里层的for循环,j=0,j<3-0条件成立,输出一个 * , 然后j自加1,在进行一次判断,此时j=1,满足小于3的条件,继续输出 * ,j继续自加,j=2,满足条件,继续输出 * ,j自加,之后的值为3不满足条件了,就退出里层的这个for循环,继续执行下一句代码:printf("\n"),换行,然后i自加,此是外围的for循环就算是走完一圈啦,然后继续第二圈,一样的道理滴~~最后输出的结果应该是:
***
**
* 这样的一个形状,其实外围的for循环就是控制行数的,里层的for循环就是控制这一行要输出多少的,不知道我的解释能不能帮助到你呢?!
|