#include <stdio.h>

int main() {
    int a,i,j,b;
    while (scanf("%d", &a) != EOF) { // 注意 while 处理多个 case
        // 64 位输出请用 printf("%lld") to 
       for(i = 0; i < a; i++)
       {
        for(b = 1; b <= a - i;b ++)
                {
                    printf(" ");
                }
          for(j = 1; j <= a; j ++)
          {
             printf("* ");
             if(j == i + 1)
             {
                printf("\n");
                break;
             }
          }
       }
       
       for(i = 0; i < a + 1 ; i ++)
        {
              for(j = 1; j <= a + 1 ; j ++)
          {
            if(i >= 1 && j == 1)
            {
                for(b = 1; b < i + 1;b ++)
                {
                    printf(" ");
                }
            }
              printf("* ");
            if(j == a - i + 1)
              {
                printf("\n");
                break;
              }
            
          }
         
        }
    }
        
    return 0;
}

金字塔和翻转金字塔的综合

特别注意变量的数值的关系

很多地方需要+1