Create hollow diamond star pattern in C
- Home
- Diamond pattern
- Create hollow diamond star pattern in C
- On
- By
- 0 Comment
- Categories: Diamond pattern, star pattern
Create hollow diamond star pattern in C
Create hollow diamond star pattern in C
In this tutorial, we will discuss Create hollow diamond star pattern in C language

Hollow diamond star pattern using for loop
In this program, we are going to learn how to display hollow diamond star pattern using for loop in C programming language
Here, we display a hollow diamond star pattern program with coding using nested for loop and also we get input from the user using scanf() function in C language
The user can provide numbers as they wish and get the hollow diamond star pattern according to their input.
Program 1
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,j,rows;
printf("Please enter the number of rows\n");
scanf("%d",&rows);//get input from user
//loop for display upper half part of the pattern
for(i=1; i<=rows; i++){
for(j=i; j<=rows; j++){
printf("*");//print star
}
for(j=1; j<=(2*i-2); j++){
printf(" ");//print space
}
for(j=i; j<=rows; j++){
printf("*");//print star
}
printf("\n");
}
//loop for printing lower half part of the pattern
for(i=1; i<=rows; i++){
for(j=1; j<=i; j++){
printf("*");//print star
}
for(j=(2*i-2); j<(2*rows-2); j++){
printf(" ");//print space
}
for(j=1; j<=i; j++){
printf("*");
}
printf("\n");//move to next line
}
return 0;
}
When the above code executed, it produces the following results
Enter the number of rows: 6 ************ ***** ***** **** **** *** *** ** ** * * ** ** *** *** **** **** ***** ***** ************
Hollow diamond star pattern using while loop
In this program, we are going to learn how to displayed hollow diamond star pattern using while loop in C programming language
Here, we display a hollow diamond star pattern program with coding using nested while loop and also we get input from the user using scanf() function in C language.
The user can provide numbers as they wish and get the hollow diamond star pattern according to their input
Program 2
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,j,rows;
printf("Enter the number of rows: \n");
scanf("%d",&rows);
i=1;
while(i<=rows){
j=i;
while(j<=rows){
printf("*");//print star
j++;
}
j=1;
while(j<=(2*i-2)){
printf(" ");//print space
j++;
}
j=i;
while(j<=rows){
printf("*");//print star
j++;
}
printf("\n");
i++;
}
//loop for printing lower half part of the pattern
i=1;
while(i<=rows){
j=1;
while(j<=i){
printf("*");//print star
j++;
}
j=(2*i-2);
while(j<(2*rows-2)){
printf(" ");//print space
j++;
}
j=1;
while(j<=i){
printf("*");
j++;
}
printf("\n");//move to next line
i++;
}
return 0;
}
When the above code executed, it produces the following results
Enter the number of rows: 6 ************ ***** ***** **** **** *** *** ** ** * * ** ** *** *** **** **** ***** ***** ************
Suggested for you
Operator in C language
For loop in C language
Nested while loop in C language