c 这题做了半天,虽然做好了,但是思路还是不清晰,估计让我再做一次还是比较花时间的。

 1 输入一个大写字符,如F 
 2 
 3 比如:
 4 
 5 输入:F 
 6 
 7 输出:
 8 
 9 FEDCBA 
10 
11  EDCBAB
12 
13   DCBABC
14 
15    CBABCD
16 
17     BABCDE
18 
19      ABCDEF
20 
21 
22 
23 输入 B
24 
25 输出:
26 
27 BA
28 
29  AB
30 
31 #include<stdio.h>
32 int main(void)
33 {
34     char c;
35     scanf("%c",&c);
36     int i,j,k,count;
37     count = c - 'A' + 1;
38     for(i=0; i<count; i++)
39     {
40         for(k=0; k< i; k++)
41         {
42             printf(" ");
43         }
44         for(j=0; j < count; j++)
45         {
46             if(i+j > count-1)
47             {
48                 //处理最后一个数
49                 if((i+j)%(count-1) == 0)
50                     printf("%c",c);
51                 else
52                     printf("%c",c- count + 1 + (i+j)%(count-1));    
53             }
54             else
55                 printf("%c",c-(j+i));
56                 //else
57                     //printf("%c",c);
58         }
59         printf("
");
60     }
61     return 0;
62 }

输入一个大写字母,如F 

比如:

输入:F 

输出:

     A

    ABA

   ABCBA

  ABCDCBA

 ABCDEDCBA

ABCDEFEDCBA


//这题由于都是从A开始输出,所有跟上面的思路是不一样的。借鉴了网上的做法来。

#include<stdio.h>
int main(void)
{
    int i,j,count;
    char c1,c2;
    scanf("%c",&c1);
    c2 ='A';
    count = c1 - 'A';
    for(i=0; i<=count; i++)
    {
        c2 = 'A';                 // 这边是关键
        for(j=0; j<count-i; j++)
            printf(" ");
        for(j=0; j< 2*i + 1; j++)
        {
            printf("%c",c2);
            if(j>=i)
                c2--;    
            else
                c2++;
        }
        printf("
");
    }
    
}


 
原文地址:https://www.cnblogs.com/lhy5678888/p/4392529.html