Buenas, he visto algunos fallos en el programa.
Primero, al dibujar el triangulo, tendria que ir la escritura de " " y de caracter dentro del for de la fila, y al acabar de escribir la fila, hacer el salto de linea.
Tambien, veo que escribes el caracter dependiendo del numero de espacios, pero depende de la fila.
Finalmente, el codigo del triangulo creo que quedaria así:
El codigo del cuadrado te lo tendrias que mirar mas:
for(fila=1;fila<=fila;fila++) no acaba, ya que fila siempre es igual a fila
for(blanco=1;blanco<=fila-fila+espacio;blanco++) fila - fila = 0. Siempre comparas blanco con espacio
Tambien iria bien que vaciaras el buffer de teclado antes y despues de leer los caracteres, ya que normalmente hay problemas con los saltos de linea.
Primero, al dibujar el triangulo, tendria que ir la escritura de " " y de caracter dentro del for de la fila, y al acabar de escribir la fila, hacer el salto de linea.
Tambien, veo que escribes el caracter dependiendo del numero de espacios, pero depende de la fila.
Finalmente, el codigo del triangulo creo que quedaria así:
Código [Seleccionar]
for(fila=1;fila<=numero;fila++){
for(columna=1;columna<=numero-fila+espacio;columna++){
printf(" ");
}
for(columna=1; columna<=2*fila-1; columna++){
printf("%c",caracter);
}
printf("\n");
}
El codigo del cuadrado te lo tendrias que mirar mas:
for(fila=1;fila<=fila;fila++) no acaba, ya que fila siempre es igual a fila
for(blanco=1;blanco<=fila-fila+espacio;blanco++) fila - fila = 0. Siempre comparas blanco con espacio
Tambien iria bien que vaciaras el buffer de teclado antes y despues de leer los caracteres, ya que normalmente hay problemas con los saltos de linea.