鱼C论坛

 找回密码
 立即注册
查看: 1605|回复: 3

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

[复制链接]
发表于 2015-1-28 12:37:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
*
**
***
****
*****        <---上半部分
****
***
**
*
如上图
上半部分的程序比较好实现
下半部分脑子秀逗了卡壳了
上半部分是
#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语句的中间?可以,不过那样顶部就空了一行,最后的星星后面紧接着提示:请按任意键退出,不美观!
}


高手来帮帮忙实现下半部分星星(注明思路是关键)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 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");
    }

}


答案

答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-1-28 15:57:36 | 显示全部楼层
看来我的智商是硬伤,谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-1-28 17:06:56 From FishC Mobile | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-25 15:55

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表