| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 762 人关注过本帖
标题:新人过来求教一个问题!
只看楼主 加入收藏
沙耶之歌
Rank: 1
等 级:新手上路
帖 子:4
专家分:5
注 册:2010-2-21
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:9 
新人过来求教一个问题!
最近在自学C语言,已经学到循环语句了,书后有一道练习题,就是很经典的用星号组成一个菱形!

下面的是书上的标准答案,但是看了半天没有看懂,因为是自学,没有任何人指导,希望有好心人来帮忙解释下这个程序,最好详细一点!!!

main()
{int i,j,k;
 for (i=0;i<=3;i++)
    {for (j=0;j<=2-i;j++)
      printf(" ");
     for (k=0;k<=2*i;k++)
      printf("*");
     printf("\n");
    }
for (i=0;i<=2;i++)
   {for (j=0;j<=i;j++)
     printf(" ");
    for (k=0;k<=4-2*i;k++)
     printf("*");
    printf("\n");
   }
}

搜索更多相关主题的帖子: 新人 
2010-02-21 23:14
caoxh0415
Rank: 2
等 级:论坛游民
帖 子:125
专家分:23
注 册:2008-4-24
收藏
得分:0 
。。。。。。。。。。。。。。。。。。。。
2010-02-21 23:35
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:20 
首先向您建议一下,一定要控制好代码的格式.一个好的格式会令您的程序一目了然,而且在调试的时候也事半功倍.

    下面试着给你的程序注释了一下,其实这个程序很简单,好好理解一下,应该很容易的.

#include<stdio.h>
main()
{
    int i,j,k;

    for (i=0;i<=3;i++)//现在开始输出菱形的上半部分
    {
        for (j=0;j<=2-i;j++)//利用循环,输出空格
            printf(" ");
        for (k=0;k<=2*i;k++)//输出星号
            printf("*");
        printf("\n");
    }
    for (i=0;i<=2;i++)//这里输出下半部分
    {
        for (j=0;j<=i;j++)
            printf(" ");
        for (k=0;k<=4-2*i;k++)
            printf("*");
        printf("\n");
    }
}
2010-02-22 01:00
沙耶之歌
Rank: 1
等 级:新手上路
帖 子:4
专家分:5
注 册:2010-2-21
收藏
得分:0 
回复 3楼 广陵绝唱
谢谢   
2010-02-22 10:12
望乡潭
Rank: 1
等 级:新手上路
帖 子:12
专家分:8
注 册:2010-2-22
收藏
得分:0 
这个题我学的时候练习了好多种形状,属于基本的东东。
include<stdio.h>
main()
{
    int i,j,k;
    for (i=0;i<=3;i++)//现在开始输出菱形的上半部分,控制换行。
    {
        for (j=0;j<=2-i;j++)//输出空格,逐渐减少
            printf(" ");
        for (k=0;k<=2*i;k++)//输出星号,逐渐增加
            printf("*");
        printf("\n");
    }
    for (i=0;i<=2;i++)//这里输出下半部分
    {
        for (j=0;j<=i;j++)
            printf(" ");
        for (k=0;k<=4-2*i;k++)//具体的公式需要自己慢慢去总结发现喽!
            printf("*");
        printf("\n");
    }
}

我也是新手,一起努力啊!哈哈!
2010-02-22 10:41
孤独_浪子
Rank: 2
等 级:论坛游民
帖 子:52
专家分:60
注 册:2010-1-13
收藏
得分:0 
这个书上好像有注释呀。这个程序今天调试的时候还没来得及弄好,电脑就罢工了
2010-02-22 15:25
keybord
Rank: 2
等 级:论坛游民
帖 子:53
专家分:25
注 册:2009-10-9
收藏
得分:0 
我也是自学的 希望能交个朋友一起讨论讨论 我QQ381619318
2010-02-22 15:47
幸运之星
Rank: 4
来 自:吉林
等 级:业余侠客
帖 子:275
专家分:239
注 册:2009-6-5
收藏
得分:0 
原来版主笨笨 在这里啊 呵呵 哪俺就走了 大家继续
2010-02-24 04:51
沙耶之歌
Rank: 1
等 级:新手上路
帖 子:4
专家分:5
注 册:2010-2-21
收藏
得分:0 
看明白程序之后,自己后来又改编了一个可以随意调节菱形大小的

main()
{
int size,i,j,k;
printf("Please input size:");
scanf("%d",&size);
    for(i = 1;i<=2*size-1;i++){
    if(i<=size){
        for(j=1;j<=size-i;j++){
            printf(" ");
        }
        for(k=1;k<=2*i-1;k++){
            printf("*");
        }
        printf("\n");
    }else{
        for(j=1;j<=i-size;j++){
            printf(" ");
        }
        for(k=1;k<=2*(2*size-i)-1;k++){
            printf("*");
        }
        printf("\n");
    }
            
    }
}
2010-02-24 09:15
幸运之星
Rank: 4
来 自:吉林
等 级:业余侠客
帖 子:275
专家分:239
注 册:2009-6-5
收藏
得分:0 
2010-02-24 20:02
快速回复:新人过来求教一个问题!
数据加载中...
 
   



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

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