piramide

C
int i, j, n, asteriscos, espacios;
  /*
  n: 6
                asteriscos    espacios
  .....*.....       1            5
  ....***....       3            4
  ...*****...       5            3
  ..*******..       7            2
  .*********.       9            1
  ***********       11           0
                espacios = de n - 1 a 0 de 1 en 1
                asteriscos = de 1 a n - 1 de 2 en 2
   *********
    *******
     *****
      ***
       *
  */
  n = 6;
  espacios = n - 1;
  asteriscos = 1;

  for(i = 1; i <= 2*n; i++){
    for(j = 1; j <= espacios; j++){//espacios
      printf(".");
    }
    for(j = 1; j <= asteriscos; j++){ //asteriscos
      printf("*");
    }
    if(i < n){//estamos en la mitad superior
      espacios--;
      asteriscos = asteriscos + 2;
    }else{//estamos en la mitad inferior
      espacios++;
      asteriscos = asteriscos - 2;
    }
    printf("\n");
  }

Source

Also in C: