C program to print hollow mirrored right triangle star pattern

C program to print hollow mirrored right triangle star pattern

In this article, I will show you, How to write a C program to print hollow mirrored right triangle star pattern. How to print hollow mirrored right triangle star pattern series with trailing spaces of n rows using for loop in C programming. Here, one thing is important to know that the rows of the right triangle.

Logic to write C program to print hollow mirrored right triangle star pattern:

It is very easy to print hollow mirrored right triangle star pattern in C, below I have mentioned a few steps to print the hollow mirrored triangle pattern in C:

  • Enter the row value for the right triangle.
  • Here I have used three loops one is the outer loop to change the line and two inner loops to print star and trailing space.
  • The outer loop iterate row times and a print newline after completing the inner loop.
  • If you will look at the design carefully, then find that the first row contains row-1 space and second-row contain row-2 space so on. So to print space for loop iterate x to row times.’
  • Second inner loop print star for first or last column or last row otherwise print space.

See the, C program to print hollow mirrored right triangle star pattern:

 

#include <stdio.h>

int main()
{
    int x = 0,y = 0;
    unsigned int rows = 0;

    printf("Enter the number of rows = ");
    scanf("%u",&rows);

    for(x=1; x<=rows; ++x)
    {
        for(y=x; y<rows; ++y)
        {
            // Print spaces
            printf(" ");
        }
        for(y=1; y<=x; ++y)
        {
            if((y==1) || (y==x) || (x==rows))
            {
                //Print star
                printf("*");
            }
            else
            {
                //Print space
                printf(" ");
            }
        }
        // Print new line
        printf("\n");
    }
    return 0;
}

Output:

print hollow mirrored right triangle star pattern

 

Code Analysis:

It asks the user to enter the row number.

printf("Enter the number of rows = ");
scanf("%u",&rows);

 

first, inner loop print space x to row-1 times.

for(y=x; y<rows; ++y)
{
    // Print spaces
    printf(" ");
}

 

Second inner loop print star for first or last column or last row otherwise print space.

for(y=1; y<=x; ++y)
{
    if((y==1) || (y==x) || (x==rows))
    {
        //Print star
        printf("*");
    }
    else
    {
        //Print space
        printf(" ");
    }
}

 

The outer loop print the newline after each iteration of the inner loops.

 

Recommended Post: