早教吧 育儿知识 作业答案 考试题库 百科 知识分享

用C语言在codeblocks环境下打印字母金字塔(入门)接收用户输入的一个大写字母,如“C”,要求输出如下字母金字塔,其中“”代表空格:AABAABCBA具体要求:(1)容许接收多次输入,直到

题目详情
用C语言在codeblocks环境下打印字母金字塔(入门)
接收用户输入的一个大写字母,如“C”,要求输出如下字母金字塔,其中“_”代表空格:
__A
_ABA
ABCBA
具体要求:
(1) 容许接收多次输入,直到输入为“0 (零)”;
(2) 如果输入非大写字母,则给出提示,并要求重新输入;
▼优质解答
答案和解析
#include
#include
#include
#define totle 65 //字母A的ASC码值
int main(void)
{
int line;
char letter,ch;
int j;
printf("请输入一个大写字母:");
scanf("%c",&letter);
for(line=0;line<=letter-totle;line++)
{
j=line;
for(int i=0;i printf(" ");
for(ch='A'+abs(j);ch<=('A'+line);) //升序输出字母
{
printf("%c",ch);
j =j-1;
ch='A'+abs(j);
}
printf("\n");
}
for(line=letter-totle-1;line>=0;line--)
{
j=line;
for(int i=0;i printf(" ");
for(ch='A'+abs(j);ch<=('A'+line);) //降序输出字母
{
printf("%c",ch);
j=j-1;
ch='A'+abs(j);
}
printf("\n");
}
getch();
return 0;
}