C program to print hollow diamond star pattern

Write a C program to print hollow diamond star (*) pattern series of n rows using for loop. How to print hollow diamond star pattern structure using for loop in C programming. Logic to print hollow diamond star pattern.

Required knowledge

Basic C programming, For loop

Must know - Program to print diamond star pattern

Logic to print hollow diamond star pattern

The pattern seems to be one of the complex pattern to think. To make it easier, let us bisect in two halves.

Here the upper pattern trailing stars are simple inverted right triangle pattern that can be easily printed and each row contains total 2*rownumber - 2 spaces and the leading stars are will be also printed same as trailing stars.

Now moving on to the second half if you look the the trailing and leading stars you will find that both of them are simple right triangle star patterns and total number of spaces per row is 2*rownumber - 2.

Program to print hollow diamond star pattern

/**
 * C program to print hollow diamond star pattern
 */

#include <stdio.h>

int main()
{
    int i, j, n;

    printf("Enter value of n : ");
    scanf("%d", &n);

    // Loop to print upper half of the pattern
    for(i=1; i<=n; i++)
    {
        for(j=i; j<=n; j++)
        {
            printf("*");
        }

        for(j=1; j<=(2*i-2); j++)
        {
            printf(" ");
        }

        for(j=i; j<=n; j++)
        {
            printf("*");
        }

        printf("\n");
    }

    // Loop to print lower half of the pattern
    for(i=1; i<=n; i++)
    {
        for(j=1; j<=i; j++)
        {
            printf("*");
        }

        for(j=(2*i-2); j<(2*n-2); j++)
        {
            printf(" ");
        }

        for(j=1; j<=i; j++)
        {
            printf("*");
        }

        printf("\n");
    }

    return 0;
}

Output

Enter value of n : 5
**********
****  ****
***    ***
**      **
*        *
*        *
**      **
***    ***
****  ****
**********

Happy coding 😉

Write your doubts or suggestion. I will try my best to help. You must escape source code before commenting. To format your source code paste your source code inside
<pre><code> ----Your Source Code---- </code></pre>