Я сделал очень мало изменений. Вы действительно можете удалить лишние printf("#");
строки и поместить их в циклы, просто запустив циклы с дополнительным экземпляром.
Тем не менее, ваш код выглядит достойно. Вы можете добавлять предупреждения, когда пользовательский ввод для высоты не между 1-9. Я пропустил эту часть, так как это не то, что вас интересует, я думаю.
void mariomore(int);
int main(void)
{
int h;
do
{
h = get_int("Height: ");
}
while (h <= 0 || h >= 9); //limiting the height of the pyramid
mariomore(h);
}
void mariomore(int h)
{
for (int i = 0; i < h; i++) // This for is to print the # rows
{
for (int k = h - 1; k > i; k--) //This for is to print the spaces
{
printf(" ");
}
for (int j = 0; j < i + 1; j++) //This for is to print the # columns
{
printf("#");
}
printf(" "); //to print space. to valid check with $$
for (int m = 0; m < i + 1; m++) //to print second half of pyramid
{
printf("#");
}
printf("\n");
}
}