Home / Programs / C program to print hollow right triangle star pattern * ** * * * * *****
Programming Example

C program to print hollow right triangle star pattern
*
**
* *
*  *
*****

👁 5,359 Views
💻 Practical Program
📘 Step by Step Learning
Write a C program to print hollow right triangle star pattern series using for loop. How to print hollow right triangle star pattern series of n rows using for loop in C programming. Logic to print hollow right triangle star pattern series in C programming.

Program Code

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

#include <stdio.h>

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

    /* Input rows from user */
    printf("Enter number of rows: ");
    scanf("%d", &rows);

    for(i=1; i<=rows; i++)
    {
        for(j=1; j<=i; j++)
        { 
            /* 
             * Print star for first column(j==1), 
             * last column(j==i) or last row(i==rows).
             */
            if(j==1 || j==i || i==rows)
            {
                printf("*");
            }
            else
            {
                printf(" ");
            }
        }

        printf("\n");
    }

    return 0;
}

Output

<pre style="text-align:left">Enter number of rows: 5
*
**
* *
*  *
*****
</pre>

Explanation

Required knowledge

Basic C programming, If else, For loop, Nested loop

Must know - Program to print hollow square star pattern.

Logic to print hollow right triangle star pattern

 

*
**
* *
*  *
*****

 

Logic to print a hollow right triangle is almost similar to right triangle star pattern logic. Just with this pattern you need to print stars only for first and last column or row.

Step by step descriptive logic to print hollow right triangle star pattern.

  1. Input number of rows to print from user. Store it in a variable say rows.
  2. To iterate through rows, run an outer loop from 1 to rows. The loop structure should look like for(i=1; i<=rows; i++).
  3. To iterate through columns, run an inner loop from 1 to i. The loop structure should look like for(j=1; j<=i; j++).
  4. Inside inner loop print star for first or last column or last row otherwise print space.
  5. After printing all columns of a row, move to next line i.e. print new line.

Another Way for the above program


 /*
 * C program to print right triangle star pattern series
* atnyla.com
 */

#include <stdio.h>

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

    /* Input number of rows from user */
    printf("Enter value of n: ");
    scanf("%d", &n);

    for(i=1; i<=n; i++)
    {
        /* Print i number of stars */
        for(j=1; j<=n; j++)
        {
            
			if(j<=i)
			printf("*");
			else
			printf(" ");
        }

        /* Move to next line */
        printf("\n");
    }

    return 0;
}  

How to learn from this program

First read the algorithm, then study the program code line by line. After that, compare the code with the output and finally go through the explanation. This approach helps learners understand both the logic and the implementation properly.