| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1066 人关注过本帖
标题:C初学者求助...for循环
只看楼主 加入收藏
oly
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-4-9
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:11 
C初学者求助...for循环
一道题:使用for循环语句编程打印如下规律的的n行图形(n>=3且n<80)。

*****
 ***
  *
 ***
*****


做过打印
  *
 ***
*****
这种样子的图案,这种两个三角的又理解不了了...求指导...不胜感激
搜索更多相关主题的帖子: 编程 
2013-04-09 23:25
oly
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-4-9
收藏
得分:0 
是要打印这样的图案...走样了
图片附件: 游客没有浏览图片的权限,请 登录注册
2013-04-09 23:27
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:1 
你的图形貌似打歪了...不过还是可以理解
做这种程序,重要的一环就是找 空格 与 星号 之间的规律...    会打印上一半,下一半反过来不就行了

三十年河东,三十年河西,莫欺少年穷!
2013-04-09 23:29
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:0 
给你一个模糊的概念
for(...)
{
   打印空格(空格的数量由循环变量控制)
   打印星号(星号。。。。。。。。。。)
}
for(...)
{
   如上反过来,不过循环次数少一次
}

三十年河东,三十年河西,莫欺少年穷!
2013-04-09 23:33
yctchxf
Rank: 6Rank: 6
来 自:盐城
等 级:侠之大者
威 望:2
帖 子:176
专家分:454
注 册:2012-4-10
收藏
得分:0 
我明天试试看看能不能打印出来
2013-04-09 23:42
apull
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:三体星系
等 级:版主
威 望:216
帖 子:1506
专家分:9241
注 册:2010-3-16
收藏
得分:2 
程序代码:
#include"stdio.h"

int main()
{    
    int n = 5;
    int i,j,k;
    int half=n/2+1;
    for(i=0;i<half;i++)
    {
        for(j=0;j<i;j++)        printf(" ");
        for(k=i;k<n-i;k++)        printf("*");
        printf("\n");        
    }
    for(i=half-1;i>0;i--)
    {
        for(j=1;j<i;j++)        printf(" ");
        for(k=i;k<n-i+2;k++)    printf("*");
        printf("\n");        
    }
    getchar();
    return 0;
}
2013-04-10 00:36
peach5460
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:武汉
等 级:贵宾
威 望:30
帖 子:2780
专家分:6060
注 册:2008-1-28
收藏
得分:2 
void Display(int n)
{
    switch(n)
    {
        case 3:
            printf("***\n ** \n  *  \n ** \n***");
        ...
        //剩下的自己推
    }
}
可以不用for循环,哈哈

我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2013-04-10 09:32
y3765258
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:106
专家分:172
注 册:2013-4-9
收藏
得分:1 
3楼正解,设置变量循环   控制 行数 和空格 即可。

有问题一起探讨,一起进步。
2013-04-10 10:44
邓士林
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:淮河河畔
等 级:贵宾
威 望:61
帖 子:2392
专家分:13384
注 册:2013-3-3
收藏
得分:2 
有两种方法,方法一:直接用printf函数把结果打印出来,这个方法没什么技巧,能得出结果,此类方法用在计算机二级c语言考试中可以,只要结果正确就会分,代码如写:
#include"stdio.h"
 
int main()
 {  
    printf("*****\n");
    printf(" ***\n");
    printf("  *\n");
    printf(" ***\n");
    printf("*****\n");
    return 0;

 }
方法二:就是利用循环控制进行输出,此类有点技巧,对循环需要了解,引用六楼的代码即可,如下:
#include"stdio.h"
 
int main()
 {   
    int n = 5;
     int i,j,k;
     int half=n/2+1;
     for(i=0;i<half;i++)
     {
         for(j=0;j<i;j++)        printf(" ");
         for(k=i;k<n-i;k++)        printf("*");
         printf("\n");        
     }
     for(i=half-1;i>0;i--)
     {
         for(j=1;j<i;j++)        printf(" ");
         for(k=i;k<n-i+2;k++)    printf("*");
         printf("\n");        
     }
     getchar();
     return 0;
 }


Maybe
2013-04-10 11:27
oly
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-4-9
收藏
得分:0 
回复 9楼 邓士林
谢谢
2013-04-10 16:11
快速回复:C初学者求助...for循环
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026912 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved