C语言中用for循环实现的倒金字塔

图案示例

其实和之前说过的正立金字塔一毛一样,只不过这个每一行的星星规律不同。

第一行9个

第二行7个

不难看出规律为:2*(5-i)-1

#include<stdio.h>
int main(){
	int i,j,k;
	for(i=0;i<5;i++){
		for(k=1;k<=5;k++){
			if(k<=i+1-1)printf(" ");
		}
		for(j=1;j<=2*(5-i)-1;j++){
			
			printf("*"); 
		}
		printf("\n");
	}
} 

有了正金子塔和倒金字塔就可以拼成一个菱形,但菱形中的倒三角很显然要少第一层。

示例:

代码:

#include<stdio.h>
int main(){
	int i,j,k;
	for(i=1;i<=5;i++){
		for(k=1;k<=5;k++){
				if(k<=5-i)printf(" ");
		}
		for(j=1;j<=2*i-1;j++){
			
			printf("*"); 
		}
		printf("\n");
	}
//。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
		for(i=0;i<4;i++){//到金字
			printf(" ");
		for(k=1;k<=5;k++){
			if(k<=i+1-1)printf(" ");
		}
		for(j=1;j<=2*(4-i)-1;j++){
			
			printf("*"); 
		}
		printf("\n");
	}
}