4-12的控制空格的代码看不懂!

来源:4-12 循环结构之多重循环

骑着鲸鱼去旅行

2017-04-16 20:02

是由行数 i 控制的,观察输出的三角形(假设该三角形是由5行构成)你会发现 每一行 * 的数量为 2*i+1(i 从零开始),每一行空格的数量为 5-i (i 从1开始)(for(int i=0;i<5;i++){
  for(int j=1;j<5-i;j++)
  printf(" ");
  {
   for(k=0;k<2*i+1;k++)
   printf("*");
  }
  printf("\n");
 }

为什么每一行空格的数量为 5-i ,按照图片上面的来看,第一行应该有6个空格+1个星星;第二行应该有4个空格+2个星星;第三行应该有2个空格+5个星星;第四行应该有0个空格+7个星星;每行的个数加起来都都为7才对啊!http://img.mukewang.com/58f35c5a00018b2d05500380.jpg

请大神帮我解答一下,我已经想了两天了但还是想不出个所以然来!

写回答 关注

2回答

  • qq_不要放弃_0
    2017-04-17 15:24:14

    不知道你的空格是怎么数的,不过这不重要,你只需要逐层递减一个空格就行了。5个也好,6个也好,7个也好都行

  • qq_不要放弃_0
    2017-04-16 22:24:43

    首先,同学你认为的第一行应该有6个空格就是错的,是5个,并且逐层减1,而星星的要求是逐层加2,你要看清楚题目的要求哦!

    骑着鲸鱼去旅...

    图片上面画的不就是这样子的嘛?我现在真的有点懵了!

    2017-04-17 00:26:37

    共 2 条回复 >

C语言入门

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

926210 学习 · 20797 问题

查看课程

相似问题