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

C Programming Language / Loop control in C Language

719

Program:

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

#include <stdio.h>

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

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

    /* Iterate through rows */
    for(i=1; i<=rows; i++)
    {
        /* Iterate through columns */
        for(j=i; j<=rows; j++)
        {
            /* 
             * Print stars for first row(i==1), 
             * first column(j==1) and 
             * last column(j=rows).
             */
            if(i==1 || j==i || j==rows)
            {
                printf("*");
            }
            else
            {
                printf(" ");
            }
        }

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

    return 0;
}

Output:

Enter number of rows: 5
*****
*  *
* *
**
*

Explanation:

Required knowledge

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

Must know -

  • Program to print inverted right triangle star pattern
  • Program to print hollow right triangle star pattern

Logic to print hollow inverted right triangle star pattern

 

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

 

The above pattern contains N row and each row contains N - i + 1 columns. For each row stars are printed for first or last column or for first row.

Step by step descriptive logic to print hollow inverted 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 i to rows. The loop structure should look like for(j=i; j<=rows; j++).

    Note: You can also run loop from 1 to rows - i + 1.

  4. Inside the inner loop print star for first and last column or for first row otherwise print space.
  5. After inner loop move to next line i.e. print new line.

This Particular section is dedicated to Programs only. If you want learn more about C Programming Language. Then you can visit below links to get more depth on this subject.