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

4-12完全新手!求助。。

这里的星号为什么会自动换行?空格数是可以计算出来但是怎么为什么可以分散到星号的两遍让它变成一个三角形。求指导。。。谢谢。

正在回答

2 回答

其实这个跟中学的数列一个道理,你从最下面一行观察,因为最下面那一行是到屏幕的边的,依次往上数找出每一个行比下一行少多少个空格,以此为规律【k=4k-i】 i为行数 k为空格数,以倒数第二行开始k应该初值为1;

以下为空格的输出

for()             //这个循环管要输出多少行

{

.......

for(k=1;k=4k-i;k++)  //这个循环管每行输出多少空格

{                                     

printf("  ");

}                    

for()  //这个管每行要输出多少个星星         

{

}

}

           

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

无切w

所以形成三角形的原因就是在做行输出循环的时候一并作了空格和星星的输出
2016-11-25 回复 有任何疑惑可以回复我~
#2

无切w 回复 无切w

实际上你要管的空格只是在于屏幕的左边,因为左边是可以贴到屏幕的,右边反而会由于程序的原因自己显示为空,只要前面由空格的规律,自然而然形成一个三角形
2016-11-25 回复 有任何疑惑可以回复我~
#3

lioncc4389670 提问者

原来如此,万分感谢解答! 脑子怎么都抽不过来 本来。
2016-11-26 回复 有任何疑惑可以回复我~
#4

无切w 回复 lioncc4389670 提问者

for(k=1;k=4-i;k++) 才对 递归错了
2016-11-29 回复 有任何疑惑可以回复我~
查看1条回复

抱歉自动换行没仔细看,printf("\n") \n就是换行符,但是这题答案还是理解不能。。。额 总共不是才4行7列嘛。。

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

我也挺好奇这件事

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

举报

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

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

进入课程

4-12完全新手!求助。。

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