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

代码表示问题

(1)/* 观察每行的空格数量,补全循环条件 */

 for(j=i;j<5;j++)  

为什么j<5?

(2)/* 观察每行*号的数量,补全循环条件 */

for(k=0;k<2*i-1;k++) 

为什么k=0?

正在回答

2 回答

答案是这样想的:a代表空格的话,aaa*\naa***\na*****\n*******\n(\n是换行的意思),其中i是行数,答案只考虑了*号前面的空格数量,因为第一行空格最多(3个),此后依次空格数减1,正好行数依次加一,所以让j = i,然后取j < 5做条件,这也第一行输出3个空格,第二行2个,第三行1个,第四行0个;

第二个问题,2*i-1是每行*号的数量,打印完空格,接着打印*号,你可以简单数一下,如果条件是 k < 2*i-1,k = 0时会输出2*i-1个*,如果条件是k <= 2*i-1的话,就该取 k=1了。

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

i是祎不是伟 提问者

非常感谢!很清楚 谢谢
2016-04-12 回复 有任何疑惑可以回复我~

好像是因为k 代表 * 的数量,初始值是0  那么k<2*i-1  就是 2*1-1=1  所以第一行的* 数量是1    其实我也刚学的 不知道对不对.

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

i是祎不是伟 提问者

那i是什么呢
2016-04-12 回复 有任何疑惑可以回复我~
#2

Nicole5863 回复 i是祎不是伟 提问者

i代表行
2016-05-17 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

代码表示问题

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