C语言编程练习4:镂空三角形

解题思路:找字符位置的规律。除了最后一行为2n-1个字符全部输出,其余行的字符位置满足pos1==n+i-1和pos2=n-i+1(i为行数,从1开始)

#include <stdio.h>

using namespace std;

int main()
{
	char a;
	int n;
	while((a=getchar())!='@')
	{
		scanf("%d",&n);
		getchar();//记住这一句不能省,否则会在第二次输入时a直接变成\n(换行符)!
		for(int i=1;i<n;i++)
		{
			for(int j=1;j<=n+i-1;j++)
			{
				if(j==n-i+1||j==n+i-1)
				{
					printf("%c",a);
				}
				else
				{
					printf(" ");
				};
			};
			printf("\n");
		};
		for(int m=1;m<2*n;m++)
		{
			printf("%c",a);
		};
		printf("\n");
		printf("\n");

	}
	return 0;
}
    

 

posted @ 2021-01-20 17:58  FantasticDoulbeFish  阅读(1046)  评论(0编辑  收藏  举报