为什么一定要这样
我要运行出这样的图案为什么代码一定要这样#include<stdio.h>
void main()
{
int i,j;
for(i=1;i<7;i++)
{
for(j=1;j<=i;j++)
{
putchar('*');
}printf("\n");
}
}
我把printf("\n");放在了后面的括号后面就运行不出这样的图案了呢 此处是打印完一行星一换行,如果放到后边括号在,就会变成全部打印完换行,回答完毕 你想一下执行的顺序是什么?
是不是先执行外面的for循环,然后进来执行里面的for循环。外层的for控制的是行数,里面的for控制的是每行的个数。结合你的需要,执行完里面for循环个数的打印后是不是要换行再重新打印个数,那么程序的结构就很清晰了,里面的for执行晚先去换行,然后再判断行数有没有i<7,有就进入循环继续打印个数。
如果你把printf("\n")放在外循环后面,那就是执行打印第一行的个数后接着打印第二行的个数,中间是没有换行这个操作的。就像你打字,本来你是要在下一行开始打的,但是你忘记按了回车,就会接下去打。
页:
[1]