| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1054 人关注过本帖
标题:求助~~~~金字塔问题()问题已解决,谢谢热心回复的大虾)
只看楼主 加入收藏
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
回复 10楼 TonyDeng
嗯,还是根据题目要求做好。

梅尚程荀
马谭杨奚







                                                       
2012-02-14 17:10
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
嘿嘿

授人以渔,不授人以鱼。
2012-02-14 17:18
回首依依
Rank: 7Rank: 7Rank: 7
来 自:苏州
等 级:黑侠
威 望:1
帖 子:193
专家分:524
注 册:2011-12-3
收藏
得分:0 
第一层循环,控制循环次数,为X—A+1次,第二层循环,包括空格的安排,这个简单,for (j=1; j<=X-‘A’+1-i; j++) d第二层中还有一循环,for (ch=‘A ’, j=1; j<=2*i-1; j++) {printf ("%c ", ch ); if(j<i ) ch++; else ch--; } 这是显示每行字母。
2012-02-14 18:57
yxiangyxiang
Rank: 3Rank: 3
来 自:/\/\/\/\/
等 级:论坛游侠
帖 子:130
专家分:186
注 册:2012-1-29
收藏
得分:0 
程序代码:
#include <stdio.h>
int main( void )
{
    int    i, j;
    char    letter, ch;
   
    ch = getchar();
    for( i=1; i<11; i++ )
    {
        letter = ch - 1;
        for( j=0; j<i; j++ )
            printf("%c", ++letter);
        for( ; j<i*2-1; j++ )
            printf("%c", --letter);
        printf("\n");
    }
    return 0;
}
    
   

[ 本帖最后由 yxiangyxiang 于 2012-2-14 21:00 编辑 ]
2012-02-14 20:55
心灵百合
Rank: 5Rank: 5
等 级:职业侠客
帖 子:215
专家分:367
注 册:2011-3-30
收藏
得分:0 
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    system("color 02");
    system("title 金字塔图");
    char ch1,ch2;
    int i,j,k,temp;
    cout<<"请输入一个大写字母;";
    cin>>ch1;
    temp=ch1-64;
    for(i=1;i<=temp;i++)
    {
                        for(j=temp-i;j>=0;j--)
                        {
                                                  cout<<" ";
                        }
                        for(k=65;k<=65+(i-1);k++)
                        {
                                                 ch2=k;
                                                 cout<<ch2;
                        }
                        for(k=64+(i-1);k>=65;k--)
                        {
                                                  ch2=k;  
                                                  cout<<ch2;
                        }
                        cout<<endl;
    }
    cout<<endl;                                            
    system("PAUSE");   
    return EXIT_SUCCESS;
}
2012-02-14 22:35
snakelazixp
Rank: 2
等 级:论坛游民
帖 子:51
专家分:94
注 册:2012-2-13
收藏
得分:0 
楼上的几位已经给楼主解释的很清楚了,我对楼上的代码扩充一下。
图片附件: 游客没有浏览图片的权限,请 登录注册
程序代码:
#include <stdio.h>
#include <math.h>

void main()
{
    int Len, Xcoor, Ycoor, Sum; // 定义半长(即高),横坐标,纵坐标,坐标绝对值之和
    char Letter;     // 定义要输入的字母

    do{
        printf("请输入一个大写字母:");
        scanf("%c", &Letter);
        getchar();
    }while(Letter < 'A' || Letter > 'Z');  // 筛选输入

    Len = Letter - 'A';

    for(Ycoor = Len; Ycoor >= 0; Ycoor--)//控制行
    {
      for(Xcoor = -Len; Xcoor <= Len; Xcoor++) //  控制列
        {
            Sum = abs(Xcoor) + abs(Ycoor) ;  

               if(Sum <= Len)
                  printf("%c", Letter - Sum);     // 寻求字母分布规律
               else
                   printf(" ");     

        }
      printf("\n");
    }
    for(Ycoor = 1; Ycoor <=Len; Ycoor++)//控制行
    {
      for(Xcoor = -Len; Xcoor <= Len; Xcoor++) //  控制列
        {
            Sum = abs(Xcoor) + abs(Ycoor) ;  

               if(Sum <= Len)
                  printf("%c", Letter - Sum);     // 寻求字母分布规律
               else
                   printf(" ");     

        }
      printf("\n");
    }

 

}
2012-02-15 19:25
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
可以考虑将纵坐标 分布于原点两端。

梅尚程荀
马谭杨奚







                                                       
2012-02-15 19:53
zxd675816777
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:252
专家分:631
注 册:2012-2-3
收藏
得分:0 
其实可以更暴力一点儿,设置一个a[5][9]的数组,把符号都顺序定义上去,然后在分行输出就好。。。虽然那个方法比较笨,可以解决问题哈。

数学好难!
2012-02-16 23:31
快速回复:求助~~~~金字塔问题()问题已解决,谢谢热心回复的大虾)
数据加载中...
 
   



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

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