题目大意:输出类似于样例的那种东西

思路:建个三维数组存放每个位置字母的ascll值,遇到0就输出空格

代码如下:

#include<stdio.h>
#include<string.h>
int main()
{
	int a[11][15][15];
	int i,j,k,zimu=96;
	memset(a,0,sizeof(a));
	for(i=3;i<=10;i++)
	{
		for(j=0;j<i;j++)
		{
			a[i][j][0]=++zimu;
			if(zimu==122) zimu=96;
		}
		for(j=i-2,k=1;j>0&&k<i-1;j--,k++)
		{
			a[i][j][k]=++zimu;
			if(zimu==122) zimu=96;
		}
		for(j=0;j<i;j++)
		{
			a[i][j][i-1]=++zimu;
			if(zimu==122) zimu=96;
		}
	}
	for(i=3;i<=10;i++)
	{
		for(j=0;j<i;j++)
		{
			for(k=0;k<i;k++)
				if(!a[i][j][k])
					printf(" ");
				else
					printf("%c",a[i][j][k]);
			puts("");
		}
	}
	return 0;
}

参考:http://www.acmerblog.com/hdu-4706-childrens-day-7751.html