1.题目要求
打印字母塔也是一道循环经典题,重点在于字母塔增加的字母不是原先的,此时我们应该如何去打印,这是要思考的。
代码如下:
int main()
{
int line = 6;
int i = 0;
for (i = 0; i < line; i++)
{
int j = 0;
for (j = 0; j < line - 1 - i; j++)
{
printf(" ");
}
char ch = 'A';
for (j = 1; j <i + 1; j++)
{
printf("%c", ch + j - 1);
}
int k = 0;
for (k = i - 1; k >= 1; k--)
{
printf("%c", ch + k - 1);
}
printf("\n");
}
return 0;
}
我介绍一下重点:第三段循环其实是打印我们每一行递增后的字母的后面,比如,第二行最后一个A,第三行后两个BA,第四行后三个CBA,以下类似,因为第二段循环无法满足打印完成的每一行,所以我们第三段循环是接着第二段循环来打印,这其实也是个简单的找数字规律问题,当我们用笔仔细写一下就很快明白了!