#include
#define _Letter(start, n) ((((start) + (n) - 'A') % 26) + 'A')
int main()
{
int i = 0, j = 0, len = 0;
char x = 0, start = 0;
scanf("%d %c", &len, &x);
if (len < 1 || x < 'A' || x > 'Z')
{
printf("你输入的数据有误!\n");
return (0);
}
start = _Letter(x, len - 1);
for (i = 0; i < len - 1; ++i) // 输出第一行
printf(" ");
for (i = 0; i < len; ++ i)
printf("%c", _Letter(start, i));
printf("\n");
for (i = 0; i < len - 2; ++i) // 输出中间行
{
for (j = 0; j < (len<<1)+i; ++j)
{
if (j == len-i-2 || j == (len<<1) + i-1)
printf("%c", _Letter(x, j));
else
printf(" ");
}
printf("\n");
}
if (len > 1) // 输出最后一行
{
for (i = 0; i < len * 3 - 2; ++i)
printf("%c", _Letter(x, i));
printf("\n");
}
return (0);
}
你要的这个程序可以实现