#include<stdio.h> int main() { int n; while(scanf("%d",&n)!=EOF) { for(int j=1;j<=n+1;j++)/*j是行数,i是个数*/ { for(int i=1;i<=(n-j+1)*2;i++)//*2因为空格数的变化是以2的倍数变。 printf(" "); for(int i=1;i<=j;i++) printf("*"); printf("\n"); } for(int j=1;j<=n;j++)//for(int j=1;j<=n-j+4;j++)就会在第一组与第二组间空一行。 //for(int j=1;j<=n-j+3;j++)会在n=4时,漏掉最后有一行…… { for(int i=0;i<j*2;i++) printf(" "); for(int i=1;i<n-j+2;i++) printf("*"); printf("\n"); } } return 0; }