Home / Programs / C program to print X star pattern * * * * * * * * * * * * * * * * *
Programming Example

C program to print X star pattern
*       *
 *     *
  *   *
   * *
    *
   * *
  *   *
 *     *
*       *

👁 1,411 Views
💻 Practical Program
📘 Step by Step Learning
Write a C program to print X star pattern series using loop. How to print the X star pattern series using for loop in C program. Logic to print X using stars in C programming.

Program Code

/**
 * C program to print X star pattern series
* atnyla.com
 */

#include <stdio.h>

int main()
{
    int i, j, N;
    int count;

    printf("Enter N: ");
    scanf("%d", &N);

    count = N * 2 - 1;

    for(i=1; i<=count; i++)
    {
        for(j=1; j<=count; j++)
        {
            if(j==i || (j==count - i + 1))
            {
                printf("*");
            }
            else
            {
                printf(" ");
            }
        }

        printf("\n");
    }

    return 0;
}

Output

Enter N: 5
*       *
 *     *
  *   *
   * *
    *
   * *
  *   *
 *     *
*       *

Explanation

Step by step descriptive logic to print X star pattern.

  1. The pattern consists of exactly N * 2 - 1 rows and columns. Hence run an outer loop to iterate through rows with structure for(i=1; i<= count; i++) (where count = N * 2 - 1).
  2. Since each row contains exactly N * 2 - 1 columns. Therefore, run inner loop as for(j=1; j<=count; j++).
  3. Inside this loop as you can notice that stars are printed for the below two cases, otherwise print space.
    • For the first diagonal i.e. when row and column number both are equal. Means print star whenever if(i == j).
    • For the second diagonal i.e. stars are printed if(j == count - i + 1).

How to learn from this program

First read the algorithm, then study the program code line by line. After that, compare the code with the output and finally go through the explanation. This approach helps learners understand both the logic and the implementation properly.