In this article, we will show how to write a C program to print the Alphabet M pattern or shape of stars using for loop, while loop, and functions.
#include <stdio.h>
int main()
{
int rows;
printf("Enter Rows = ");
scanf("%d", &rows);
for (int i = 0; i < rows; i++)
{
printf("*");
for (int j = 0; j <= rows; j++)
{
if ((j == rows) || (j == i && j < rows / 2)
|| (j == rows - i - 1 && j > rows / 2))
{
printf("*");
}
else
{
printf(" ");
}
}
printf("\n");
}
return 0;
}
Enter Rows = 18
** **
* * * *
* * * *
* * * *
* * * *
* * * *
* * * *
* * * *
* * *
* *
* *
* *
* *
* *
* *
* *
* *
* *
Instead of a for loop, this Alphabet M Pattern of stars program uses a while loop to iterate the rows and columns. For more star programs, click here.
#include <stdio.h>
int main()
{
int i, j, rows;
printf("Enter Rows = ");
scanf("%d", &rows);
i = 0;
while ( i < rows)
{
printf("*");
j = 0;
while ( j <= rows)
{
if ((j == rows) || (j == i && j < rows / 2)
|| (j == rows - i - 1 && j > rows / 2))
{
printf("*");
}
else
{
printf(" ");
}
j++;
}
printf("\n");
i++;
}
return 0;
}
Enter Rows = 15
** **
* * * *
* * * *
* * * *
* * * *
* * * *
* * * *
* *
* *
* *
* *
* *
* *
* *
* *
In this C program, we create an alphabetMPat function that accepts those values and prints the Alphabet M shape or pattern of the given char.
#include <stdio.h>
void alphabetMPat(int rows, char a)
{
for (int i = 0; i < rows; i++)
{
printf("%c", a);
for (int j = 0; j <= rows; j++)
{
if ((j == rows) || (j == i && j < rows / 2)
|| (j == rows - i - 1 && j > rows / 2))
{
printf("%c", a);
}
else
{
printf(" ");
}
}
printf("\n");
}
}
int main()
{
int rows;
char a;
printf("Enter Alphabet = ");
scanf("%c", &a);
printf("Enter Rows = ");
scanf("%d", &rows);
alphabetMPat(rows, a);
return 0;
}