为了账号安全,请及时绑定邮箱和手机立即绑定

求大神解释

我的天啊,卡在这里几天了,怎么都想不明白,i,j,k分别代表的什么,为什么只要输出空格和“*”就会排好一个正三角的顺序了,又是怎么执行的子循环,父循环

正在回答

3 回答

一个最基本的规则:

外层循环控制行。

1:从上往下数有几行。

2:外层循环不参与运算。

内层循环控制列。

1:横向查数有几个标志(*)就是几列。

2:内存循环一周,外层循环一次。

比如:

for(int i=0;i<5;i++)

{    

        for(int j=0,j<5;j++);

}

这个循环共运行 5*5=25次。即(1*5)+(1*5)+(1*5)+(1*5)+(1*5)=25次;

0 回复 有任何疑惑可以回复我~

i代表的是三角‘*’图的层数,j代表的是三角‘*’图的第i 层的空格数,k代表的是三角‘*’图的*号数


0 回复 有任何疑惑可以回复我~

第一行由连续的四个空格加上一个*号组成,第二行由连续的三个空格加上连续的三个*号组成,,,(视觉欺骗,连续的*号后面其实什么都没有)

i代表行数

for(j=i;j<5;j++)循环执行的次数代表了该行的空格数量

for(k=0;k<2*i-1;k++)循环执行的次数代表了该行的*号数量


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       924439    人
  • 解答问题       20756    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

求大神解释

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信