fzwenbo 发表于 2015-1-28 12:37:16

思路短路了,小甲鱼都没我讲得细v(*^_^*)v

*
**
***
****
*****      <---上半部分
****
***
**
*
如上图
上半部分的程序比较好实现
下半部分脑子秀逗了卡壳了
上半部分是
#include <stdio.h>
void main()
{
    for(i=1;i<6;i++)//为什么赋值1?i变量从1-5是5次循环!为什么小于6?因为最长的是第5行,这个主要控制回车
    {                        //可不可赋值0?可以,但后面的i<6要改成i<5,后面的j值也要改为什么?因为i的值0、1、2、3、4(是5次,重点就是最长的星星)
      for(j=1;j<=i);j++)//为什么赋值1?因为第一是1个星星“*”!为什么j<=i用i值来控制j的循环次数
      {
            printf("*");
      }
    }
       printf("\n");//为什么不放在2个for语句的中间?可以,不过那样顶部就空了一行,最后的星星后面紧接着提示:请按任意键退出,不美观!
}


高手来帮帮忙实现下半部分星星(注明思路是关键)

ANDES 发表于 2015-1-28 14:23:59

#include <stdio.h>
void main()
{
    int i,j;
    for(i=1;i<6;i++)
    {                        
      for(j=1;j<=i;j++)
      {
            printf("*");
      }
         printf("\n");
    }
    for(i=4;i>=1;i--)//把上半部分反过来循环打印;再减去中间最大的一行就可以了
    {                        
      for(j=1;j<=i;j++)
      {
            printf("*");
      }
         printf("\n");
    }

}


fzwenbo 发表于 2015-1-28 15:57:36

看来我的智商是硬伤,谢谢

百日维新 发表于 2015-1-28 17:06:56

fzwenbo 发表于 1 小时前static/image/common/back.gif
看来我的智商是硬伤,谢谢...

兄弟,你得加油了
页: [1]
查看完整版本: 思路短路了,小甲鱼都没我讲得细v(*^_^*)v