C program to print mirrored right triangle star pattern

  • Write a program in C to print mirrored right angled triangle star (*) pattern using for loop.
  • Write a C program to print a mirrored right angles triangle pattern of star (*) character of n rows.

For a mirrored right triangle star pattern of 7 rows. Program’s output should be:

Mirrored_Triangle_Star_Pattern

Required Knowledge

Algorithm to print mirrired right triangle star pattern using loop

C program to print mirrored right triangle star pattern is similar to the┬áright triangle star pattern program. Once you understand how to print right triangle pattern then printing it’s mirrored pattern will be an easy task.

  • Take the number of rows(N) of mirrored right triangle as input from user using scanf function.
  • In any row, the sum of spaces and stars are equal to N. Number of stars increases by one and number of spaces before stars decreases by 1 in consecutive rows.
  • In any row R, we will first print N-R-1 space characters then R+1 star characters.

Here is the matrix representation of the inverted triangle star pattern. The row numbers are represented by i whereas column numbers are represented by j.
Inverted_triangle_Star_Pattern

C program to print mirrored right triangle star pattern

C program to print mirrored right triangle star pattern

#include <stdio.h>
 
int main() {
    int i, j, rows;
 
    printf("Enter the number of rows\n");
    scanf("%d", &rows);
 
    for(i = 0; i < rows; i++){
        /* for j th row, first print rows-r spaces then stars */
        for(j = 0; j < rows; j++){
            if(j < rows-i-1){
                printf(" ");
            } else {
                printf("*");
            }
        }
        /* move to next row */
        printf("\n");
    }
    return 0;
}

Output

Enter the number of rows
6
     *
    **
   ***
  ****
 *****
******

Here is the C program to print inverted right triangle star pattern using one for loop

Here is the C program to print inverted right triangle star pattern using one for loop

#include<stdio.h>
  
int main(){
    char *str="*******************";
    int i,j, rows;
     
    printf("Enter the number of rows\n");
    scanf("%d", &rows); 
     
    for(i = 0; i < rows; i++){
       printf("%*.*s\n", rows, i+1, str);
    }
     
    return 0;
}
</stdio.h>

Output

Enter the number of rows
5
    *
   **
  ***
 ****
*****