永发信息网

C语言循环问题求解释#includeint main(void){\x09int i1, j1, n1;\x09\x09

答案:1  悬赏:0  手机版
解决时间 2021-01-03 21:02
  • 提问者网友:我们很暧昧
  • 2021-01-02 22:14
C语言循环问题求解释
#include
int main(void)
{
\x09int i1, j1, n1;
\x09
\x09printf(Please input n: );
\x09scanf(%d, &n1);
\x09for (i1 = 1; i1
最佳答案
  • 五星知识达人网友:摆渡翁
  • 2021-01-02 22:40

里面出现了6个for,为了便于给你解释,编号为1、2、3、4、5、6
其中2、3是套在1里面的.
for1的作用是控制换行,即每当for2、for3把合适数量的空格和#号写完之后,就换一行,for1里面的变量i1就是代表:当前正在执行的那一行是第几行.
for2控制第i1行输出的空格的数量,当行数越大的时候,那么输出的空格就越少(菱形就是这样,你应该明白),因此,for2里面的j1的最大值就必须跟当前正在执行的行数建立联系:j1下限是i1,上限是n1,随着i1增大,for2执行的总次数(上限-下限=n1-i1)就越少.
同理,随着行数i1增大,for3输出的#号就越多.
同理,for4执行菱形的下半部分
举个例子,
第一行:for2输出5个空格,for3输出一个#号,完成之后,for1发出一个换行.进入第二行.
第二行:for2输出4个空格,for3输出3个#号,完成之后,for1发出一个换行.进入第三行.
第三行:for2输出3个空格,for3输出5个#号,完成之后,for1发出一个换行.进入第4行.


我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯