Write a C program to print 8 star pattern series using loop. How to print 8 star pattern series using for loop in C programming. Logic to print 8 star pattern series of N columns in C program.
Required knowledge
Basic C programming, If else, Loop
Must have programming knowledge for this program.
Logic to print 8 star pattern
To simply things for beginners I have divided entire logic in three main sub tasks.
- Print a hollow square star pattern with N columns and (N*2) - 1 rows.
- Modify above hollow square pattern logic. Instead of star(*), print space at top and bottom corners and in the center intersection edge.
- Finally modify hollow square logic to print star instead of space for Nth row.
Below is the step by step descriptive logic to print 8 star pattern.
- Read number of columns to print from user. Store it in some variable say N.
- Iterate through (N*2)-1 rows. Run an outer loop with structure for(i=1; i<N*2; i++).
- Iterate through N columns. Run an inner loop with structure for(j=1; j<=N; j++).
- Inside inner loop first check conditions for corner and center intersection spaces. Print space for
1st row and 1st or Nth column = if(i==1 && (j==1 || j==N))
Nth row and 1st or Nth column = if(i==N && (j==1 || j==N))
N*2-1 row and 1st or Nth column = if(i==N*2-1 && (j==1 || j==N))
- Print stars for
1st row or 1st column = if(i==1 || j==1)
Nth row or Nth column = if(i==N || j==N)
N*2-1th row = if(i==N*2-1)
- Otherwise print spaces if above conditions does not matches.
Program to print 8 star pattern
/**
* C program to print 8 star pattern series
*/
#include <stdio.h>
int main()
{
int i, j, size;
printf("Enter size: ");
scanf("%d", &size);
for(i=1; i<size*2; i++)
{
for(j=1; j<=size; j++)
{
// Condition for corner and center intersection space
if((i==1 && (j==1 || j==size)) || (i==size && (j==1 || j==size)) || (i==size*2-1 && (j==1 || j==size)))
printf(" ");
else if(i==1 || i==size || i==(size*2)-1 || j==1 || j==size)
printf("*");
else
printf(" ");
}
printf("\n");
}
return 0;
}
Output
Enter size: 6 **** * * * * * * * * **** * * * * * * * * ****
Screenshot
Happy coding ;)