C语言打印星号金字塔

# include <stdio.h>
int main()
{
    
    
	int i,j;
	
	//三行、顺序递增、直角三角形 
	for(i=1;i<=3;++i)
		{
    
    
			for(j=1;j<=i;++j)
				printf("*");
		printf("\n"); 
		}
	 
	 //三行、奇数递增、直角三角形
	 for(i=1;i<=3;++i)
	 	{
    
    
	 		for(j=1;j<=2*i-1;++j)
	 			printf("*");
		printf("\n");
		} 
	 
	//三行、奇数递增、等腰三角形
	  for(i=1;i<=3;++i)
	 	{
    
    
 			for(j=1;j<=3-i;++j)
				printf(" ");	
	 		for(j=1;j<=2*i-1;++j)
	 			printf("*");
		printf("\n");
		} 
	 
	//三行、顺序递减、直角三角形 
	for(i=1;i<=3;++i)
		{
    
    
			for(j=1;j<=3-i+1;++j)
				printf("*");
			printf("\n"); 
		}
	
	//三行、奇数递减、直角三角形
	for(i=1;i<=3;++i)
		{
    
    
			for(j=1;j<=2*(3-i)+1;++j)
				printf("*");
			printf("\n"); 
		}
		
	//三行、奇数递减、等腰三角形
 	for(i=1;i<=3;++i)
		{
    
    
			for(j=1;j<=i-1;++j)
				printf(" "); 
			for(j=1;j<=2*(3-i)+1;++j)
				printf("*");
			printf("\n"); 
		}
	
	//七行、菱形
	
	//前四行由奇数递增、等腰三角形 
	for(i=1;i<=4;++i)
		{
    
    
			for(j=1;j<=4-i;++j)
				printf(" ");
			for(j=1;j<=2*i-1;++j)
				printf("*");
			printf("\n");
		} 
	//后三行由奇数递减、等腰三角形 
	for(i=1;i<=3;++i)
		{
    
    
			for(j=1;j<=i;++j)
				printf(" ");
			for(j=1;j<=2*(3-i)+1;++j)
				printf("*");
			printf("\n"); 
		}
		
	//推理至一般情况
	int n;
	printf("请输入一个正整数\n");
	scanf("%d",&n); 
		for(i=1;i<=n;++i)
		{
    
    
			for(j=1;j<=n-i;++j)
				printf(" ");
			for(j=1;j<=2*i-1;++j)
				printf("*");
			printf("\n");
		 } 
	for(i=1;i<=n-1;++i)
		{
    
    
			for(j=1;j<=i;++j)
				printf(" ");
			for(j=1;j<=2*(n-1-i)+1;++j)
				printf("*");
			printf("\n"); 
		}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/m0_47585722/article/details/110012215