C program to print reversed mirrored right triangle star pattern
*****
 ****
  ***
   **
    *

C Programming Language / Loop control in C Language

966

Program:

/**
 * C program to print reverse mirrored 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);

    /* Iterate through rows */
    for(i=1; i<=rows; i++)
    {
        /* Print leading spaces */
        for(j=1; j<i; j++)
        {
            printf(" ");
        }

        /* Iterate through columns to print star */
        for(j=i; j<=rows; j++)
        {
            printf("*");
        }

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

    return 0;
}

Output:

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

Explanation:

Required knowledge

Basic C programming, For loop, Nested loop

Must know - Program to print inverted right triangle star pattern.

Logic to print reversed mirrored right triangle star pattern

 

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

 

The above pattern is similar to inverted right triangle star pattern with leading spaces. The pattern consist of N rows and each row contains N - i + 1 stars. In addition to stars each row contains some leading spaces. For each row there are total i - 1 spaces (where i is current row number). Point your mouse cursor over the above pattern to count total spaces per row.

Step by step descriptive logic to print reversed mirrored 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 print spaces, run an inner loop from 1 to  i - 1 . The loop structure should look like  for( j=1; j < i; j++ ) . Inside this loop print single space.

    Note:  j < i  is equivalent to  j <= i - 1.

  4. To print stars, run another inner loop from i to rows. The loop structure should look like for( j=i; j <= rows; j++). Inside the loop print star.
  5. After printing all columns of a row, move to next line i.e. print new line.

Another Way to do 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(i<=j)
			printf("*");
			else
			printf(" ");
        }

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

    return 0;
}  



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.