题目要求:用嵌套循环打印出如下金字塔型字母:
A
ABA
ABCBA
ABCDCBA
ABCDEDCBA (实际格式是金字塔。。)
当时刚学嵌套循环时第一次还不是很会做这个金字塔型(汗),实际上看出规律就很好做了,现放代码如下:
#include<stdio.h>
#define ROW 5 //define行数便于以后修改,是个好习惯
int main()
{
char ch ='A';
int i,row;
for(row = 1;row <= ROW;row++)
{
for(i = 1;i <=ROW - row;i++)
//可以看出规律是从第一行4个开始每行依次减少一个空格
{
printf(" ");
}
for(i = 0;i < row;i++)
//注意i从0开始,便于用ch+i打印字母,先打印出金字塔每行中递增的部分
{
printf("%c",ch+i);
}
for(i = row - 2;i >= 0;i--)
//再打印递减的部分
{
printf("%c",ch+i);
}
printf("\n");
}
return 0;
}
可以看出,这个金字塔型实际上只需嵌套循环找下规律便可很快地写出。
欢迎交流探讨。
谢谢。