C program to print mirrored right triangle star pattern

Write a C program to print mirrored right triangle star(*) pattern series using for loop. How to print right triangle star pattern series with trailing spaces of n rows using for loop in C programming. The pattern with 5 rows should look like:
    *
   **
  ***
 ****
*****

Required knowledge:

Basic C programming, For loop
Before printing mirrored right triangle star pattern you must know how to print simple right triangle star pattern.

Logic:

If you have gone though the previous post to print the right triangle star pattern then printing this wouldn't be difficult. What you need is to add an extra inner loop that will print spaces before * gets printed. And if you carefully look to the spaces you will find a special pattern of spaces that are eventually in decreasing order of row (i.e. first row contains n-1=4 spaces, followed by 3 and so on... Where n is the total number of rows).

Program:

/**
 * C program to print mirrored right triangle star pattern series
 */

#include <stdio.h>

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

    //Read number of rows to be printed from user
    printf("Enter value of n: ");
    scanf("%d", &n);

    for(i=1; i<=n; i++)
    {
        //Used for printing spaces in decreasing order of row
        for(j=i; j<n; j++)
        {
            printf(" ");
        }

        //Prints star in increasing order or row
        for(j=1; j<=i; j++)
        {
            printf("*");
        }

        printf("\n");
    }
    
    return 0;
} 


Output
X
_
Enter value of n: 5
    *
   **
  ***
 ****
*****


Screenshot:

Mirrored right triangle star pattern program in C

Happy coding ;)


Labels: , , ,