1. 程式人生 > >迴圈列印金字塔型字母(C語言)

迴圈列印金字塔型字母(C語言)

題目要求:用巢狀迴圈打印出如下金字塔型字母:
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;
 } 

可以看出,這個金字塔型實際上只需巢狀迴圈找下規律便可很快地寫出。
歡迎交流探討。
謝謝。