| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 774 人关注过本帖, 1 人收藏
标题:编程输出图形
只看楼主 加入收藏
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
结帖率:99.34%
收藏(1)
已结贴  问题点数:16 回复次数:8 
编程输出图形
RT 要求:输入N=3时 出现以下图形:
图片附件: 游客没有浏览图片的权限,请 登录注册
搜索更多相关主题的帖子: 图形 编程 
2011-12-20 23:21
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
回复 楼主 有容就大
兴趣题,我也在想,各位随意。

梅尚程荀
马谭杨奚







                                                       
2011-12-21 00:56
天天涯涯
Rank: 4
等 级:业余侠客
帖 子:215
专家分:267
注 册:2011-10-17
收藏
得分:8 
先把代码或思路写上。
2011-12-21 07:01
天天涯涯
Rank: 4
等 级:业余侠客
帖 子:215
专家分:267
注 册:2011-10-17
收藏
得分:0 
给你个思路吧,第一行和最后一行单独处理,其他的就有规律了。
2011-12-21 07:12
星火gavin
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:78
专家分:170
注 册:2011-11-5
收藏
得分:8 
#include <stdio.h>
int main()
{
    int i,j,n=0;
    printf("input\n");
    scanf("%d",&n);
    //输入空格
    for(i=1;i<=2*n-1;i++)
    {
        for(j=0;j<25-i;j++)printf(" ");         
        for(j=1;j<=2*n;j++)
        if(i==1||i==2*n-1||j==1||j==2*n)printf(" * ");
        else printf("   ");
        printf("\n");
    }
}
循环打印
2011-12-21 15:01
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
回复 5楼 星火gavin
运行后貌似和原图不符。

梅尚程荀
马谭杨奚







                                                       
2011-12-21 15:56
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
我写了个,大家参考下:

#include  <stdio.h>
int  main(void)
{
    int  N,i, j;
    int  a[100][100];
  
    printf("Please input n:");
    scanf("%d", &N);

    // 把字符数组所有的单位画成空格
    for (i = 1; i <= 2 * N + 3; i++)  
        for (j = 1; j <= 6 * N; j++)
             a[i][j] = ' ';

    // 在需要的地方换成*字符
   
    i = 1;   // 变换最底下的一行
    for (j = 1; j <= 4 * N ; j++)
    {
        if (0 != j % 2)  a[i][j] = '*';
    }

    j = 1;  // 变换左边的斜竖行
    while(i <= (N + 1) * 2) // 行数上移N+1次
    {
    i += 2;  // 行数上移两个单位,列数右移1个单位
    j++;
    a[i][j] = '*';
    }

    i = 1;  // 变换右边的斜竖行
    j = 4 * N - 1;
    while (i <= 2 * N + 3)
    {
        i += 2;
        j++;
        a[i][j] = '*';
    }

     i -= 2; // 变换顶行
     j = N + 2;
     while (j <= 5 * N )
     {
         j += 2;
         a[i][j] = '*';
     }

     // 输出最后的图形
     for (i = 2 * N + 3;i >= 1; i--)
     {
         for (j = 1; j <= 5 * N ; j++)
             printf("%c", a[i][j]);
         printf("\n");
     }
         
    return  0;
}
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册


梅尚程荀
马谭杨奚







                                                       
2011-12-21 18:34
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
我这个帖子还没结,有好算法的贴个代码学习下。

梅尚程荀
马谭杨奚







                                                       
2011-12-22 17:33
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
丿i。。。

梅尚程荀
马谭杨奚







                                                       
2011-12-22 22:57
快速回复:编程输出图形
数据加载中...
 
   



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

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