| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 701 人关注过本帖
标题:新手,想明白这是什么意思!
只看楼主 加入收藏
zouleitzk520
Rank: 1
等 级:新手上路
帖 子:15
专家分:5
注 册:2009-11-2
收藏
 问题点数:0 回复次数:7 
新手,想明白这是什么意思!
打印出如下图案           
*
***
******
********
******
***
*
程序源代码:
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");
 }
}
 大虾们给我详细的解释下吧(在程序旁写上注释)

搜索更多相关主题的帖子: 源代码 
2009-11-08 22:35
小J
Rank: 8Rank: 8
等 级:等待验证会员
威 望:1
帖 子:282
专家分:704
注 册:2009-6-18
收藏
得分:0 
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");
 }
}



这是一个输出菱形的程序,貌似不是楼主的那个图形。
2009-11-09 00:01
czc0807
Rank: 2
等 级:论坛游民
帖 子:28
专家分:73
注 册:2009-10-19
收藏
得分:0 
    *
   ***
  *****
  *******
  *****
   ***
    *

上面这个图形的代码:

#include <stdio.h>
void 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");
    }
}

[ 本帖最后由 czc0807 于 2009-11-9 03:02 编辑 ]

Java 编程技術交流Q群:10814882欢迎你的加入````
2009-11-09 02:59
zouleitzk520
Rank: 1
等 级:新手上路
帖 子:15
专家分:5
注 册:2009-11-2
收藏
得分:0 
j<=2-i  he  k<=2*i  he  k<=4-2*i   具体是什么意思,新手,最好详细的说明!
2009-11-10 17:19
longlong89
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:小飞侠
威 望:6
帖 子:1043
专家分:2754
注 册:2009-8-18
收藏
得分:0 
j <= 2 和 j <= i 控制输出多少个空格
k <= 2*i 和 k<=4-2*i  控制输出多少个*号
注意看输出,它每行分别是由*和空格组成的,只不过空格没办法显式的显示罢了

想象力征服世界
2009-11-10 18:12
chinasmu
Rank: 2
等 级:论坛游民
帖 子:50
专家分:22
注 册:2009-10-31
收藏
得分:0 
1楼给出的程序错误好多啊,我用vc6.0++编译了一下,看一下图片吧
图片附件: 游客没有浏览图片的权限,请 登录注册


3楼正解,结果:
图片附件: 游客没有浏览图片的权限,请 登录注册
2009-11-10 18:58
zhoutao0712
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2006-7-12
收藏
得分:0 
源码你们已经给出,但思路你们都没讲。。。。。。。。。。。。。。。

划图形的思想是建立坐标系。

菱形可以以中心为原点,对角线为坐标轴。

这样只要改变对角线长度就可以画出任意大小的菱形。

下面是空心菱形的源码

#include<stdio.h>
#include<math.h>
#include<stdlib.h>

#define LINE 7

void main()
{
    int y,x,k;
    k=LINE/2;
    for(y=-k;y<=k;y++)
    {
        for(x=-k;x<=k;x++)
        {
            if((x==y+k)||(x==y-k)||(x==k-y)||(x==-k-y))
                printf("%c",'*');
            else
                printf(" ");
        }
        printf("\n");
    }
}
图片附件: 游客没有浏览图片的权限,请 登录注册

2009-11-11 08:05
zouleitzk520
Rank: 1
等 级:新手上路
帖 子:15
专家分:5
注 册:2009-11-2
收藏
得分:0 
谢谢,受益匪浅!
2009-11-11 21:53
快速回复:新手,想明白这是什么意思!
数据加载中...
 
   



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

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