In this tutorial, we will write a program to print half hourglass pattern in C. Before that, you may go through the following topic in C.
1. Right half hourglass pattern in C
#include <stdio.h>
int main()
{
int i, j, rows;
printf("Enter the no. of rows: ");
scanf("%d", &rows);
for (i = rows - 1; i >= 0; i--)
{
for (j = i; j >= 0; j--)
{
printf("* ");
}
printf("\n");
}
for (i = 0; i <= rows - 1; i++)
{
for (j = i; j >= 0; j--)
{
printf("* ");
}
printf("\n");
}
return 0;
}
Enter the no. of rows: 5
* * * * *
* * * *
* * *
* *
*
*
* *
* * *
* * * *
* * * * *
2. Left half hourglass pattern in C
#include <stdio.h>
int main()
{
int i, j, k, rows;
printf("Enter the no. of rows: ");
scanf("%d", &rows);
printf("Output: \n\n");
//upper half
for (i = 1; i <= rows; i++)
{
for (k = 1; k < i; k++)
printf(" ");
for (j = i; j <= rows; j++)
printf("*");
printf("\n");
}
//lower half
for (i = rows - 1; i >= 1; i--)
{
for (k = 1; k < i; k++)
printf(" ");
for (j = i; j <= rows; j++)
printf("*");
printf("\n");
}
return 0;
}
Output:
