关于C语言打印字母塔的问题

来源:互联网 发布:赵 和谐 家人 知乎 编辑:程序博客网 时间:2024/06/03 14:27

  #include<stdio.h>                                                                          

void  main()                                                                      

{                                                                           

     int i,j; 

     char =ch;                                                                                                                      

     for(i=1;i<=4;i++)                                                                                                 

     {                                                                                                                           

          for(j=1;j<=4-i;j++)                                                                             
{
putchar(' ');  
}  //打印空格
for(ch='A';ch<='A'+i-1;ch++)            
{
printf("%c",ch);
}
     //打印字母



    //左边的部分已经完成,接着完成右边的部分

           for(ch=ch-2;ch>='A';ch--)      //i=4;.............ch='D';  现在要打印右边应该从'C'去打,因此ch=ch-2;

           {

                printf("ch");

            }                             //打印右半部分

     }

   printf("\n");

}

     

   

         

 思想:从中间划分为两部分,先打印左边再打印右边。

  以图形为例:  总共有四行,且第一行在三个空格后出现了 A,

                                                   第二行在两个空格后出现了 A,              

                                                   第三行在一个空格后出现了 A,

                                                   第四行在零个空格后出现了 A,

         即在打印空格后就可打印字母,可利用for循环,先打空格在打印字母。就会完成左半部分的打印。

右半部分在根据原理打印出来即可。

   

 

    





}                    

                       

原创粉丝点击