编写图案

让程序要求用户输入一个大写字母,使用嵌套循环产生如下的金字塔图案:

    A

  ABA

 ABCBA

 ABCDCDA

ABCDEDCBA

提示:使用一个外部循环来处理行,在每一行中使用三个内部循环,一个处理空格,一个以升序打印字母,一个以降序打印字母。

 

#include<stdio.h>

void main()

{

         inti,j,k,p,n;

         intflag=0;

         charch;

         printf("请输入一个大写字母\n");

         scanf("%c",&ch);

         printf("请输入行数\n");

         while(scanf("%d",&n)==1)

         {

                   for(i=0;i<n;i++)//处理行数

                   {       

                            intsize=i-1;

                            for(j=0;j<n-i;j++)//处理空格

                                     printf("");

                            for(k=0;k<=i;k++)//升序排列字母

                            {

                                     printf("%c",ch+flag);

                                     flag++;

                            }

                            for(p=0;p<i;p++)//降序排列字母

                            {

                                    

                                     if(i==0)

                                               printf("");

                                     else

                                               printf("%c",ch+size);

                                     size--;

                            }

                            printf("\n");

                            flag=0;

                   }

                   printf("请输入行数\n");

         }

}

 

在设计过程中只要发现图案规律就很容易编写程序,在写代码过程中我发现如果把输入字母和输入行数的顺序弄错的话就得不到想要的结果,应该是先输入字母,然后再输入行数,这样才可能得到正确的结果,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值