Código:
#include <stdio.h>
#include <windows.h>
int main()
{
char caracter;
int i,j,an,al;
an=0;al=0;
printf("Introduce caracter: ");
scanf("%c", &caracter);
printf("Introduce altura: ");
scanf("%i", &al);
printf("Introduce ancho: ");
scanf("%i", &an);
if (an==1) // Caso especial para 1 de anchura//
{
for(i=1; i<=al; i++)
printf("%c\n", caracter);
}
else
{
for(i=1;i<=al;i++) //Controla el numero de filas//
{
printf("%c", caracter); //Siempre escribe el primer caracter//
for(j=2;j<an;j++)
{
if( (i==1) || (i==al) )
printf("%c",caracter);
else
printf(" ");
}
printf("%c", caracter); //Siempre escribe el ultimo caracter//
printf("\n");
}
}
system("pause"); //Esto solo sirve para parar el programa y poder ver el resultado: windows.h//
return 0;
}
Te fallataban un par de printf y cambiar un poco los bucles. Te comento un par de cosas. La librería stdlib.h (
#include <stdlib.h>) no te hace falta aquí para nada. Luego, si las variables
i,
j las estas utilizando unicamente en bucles for, no hace falta que las inicialices antes, porque ya lo haces en el for:
for(i=0; i<....)