Home C Programming Language / Programs / C program to print hollow diamond star pattern ********** **** **** *** *** ** ** * * * * ** ** *** *** **** **** **********
🚀 Programming Example

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

👁 1,618 Views
💻 Practical Program
📘 Step Learning
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 in C program. Logic to print hollow diamond star pattern in C programming.

💻 Program Code

/**
 * C program to print hollow diamond star pattern
* atnyla.com
 */

#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;
}
                        

🖥 Program Output

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

📘 Explanation

Required knowledge

Basic C programming, For loop, Nested 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 in the upper part of the pattern, trailing and leading stars are inverted right triangle pattern that can be easily printed. Each row contains 2*rownumber - 2 spaces.

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

📚 Learning Subject

Master Programming Through Practical Examples

Improve your coding logic, problem-solving skills and programming confidence by practicing real-world examples with explanations.

🎯 How to learn from this example

First understand the algorithm carefully. Then study the program line-by-line and compare it with the output. Finally, review the explanation section to strengthen your logic and programming understanding.

🔥 Practice suggestion

Rewrite the program without looking at the code. Modify values, conditions or logic and run it again. This helps improve confidence and strengthens coding skills much faster.