Mastering Pyramid Patterns in C Programming

Getting Started: Essential C Programming Concepts

Before diving into the world of pyramid patterns, make sure you have a solid grasp of the following C programming topics:

  • C if…else Statement
  • C for Loop
  • C while and do…while Loop
  • C break and continue

Pyramid Patterns Galore!

Let’s get started with our first program:

Example 1: Half Pyramid of *

Create a half pyramid using asterisks (*) with this simple yet effective program.


#include <stdio.h>

int main() {
    int i, j;
    for(i = 1; i <= 5; i++) {
        for(j = 1; j <= i; j++) {
            printf("* ");
        }
        printf("\n");
    }
    return 0;
}

Example 2: Half Pyramid of Numbers

Take your skills to the next level by creating a half pyramid using numbers.


#include <stdio.h>

int main() {
    int i, j;
    for(i = 1; i <= 5; i++) {
        for(j = 1; j <= i; j++) {
            printf("%d ", j);
        }
        printf("\n");
    }
    return 0;
}

Example 3: Half Pyramid of Alphabets

Get creative with this program that generates a half pyramid using alphabets.


#include <stdio.h>

int main() {
    int i, j;
    char c = 'A';
    for(i = 1; i <= 5; i++) {
        for(j = 1; j <= i; j++) {
            printf("%c ", c++);
        }
        printf("\n");
    }
    return 0;
}

Inverted Pyramids: A New Challenge

Now that you’ve mastered the basics, it’s time to try something new. Let’s create inverted pyramids!

Example 4: Inverted Half Pyramid of *

Flip your half pyramid upside down with this clever program.


#include <stdio.h>

int main() {
    int i, j;
    for(i = 5; i >= 1; i--) {
        for(j = 1; j <= i; j++) {
            printf("* ");
        }
        printf("\n");
    }
    return 0;
}

Example 5: Inverted Half Pyramid of Numbers

Use numbers to create an inverted half pyramid that will impress.


#include <stdio.h>

int main() {
    int i, j;
    for(i = 5; i >= 1; i--) {
        for(j = 1; j <= i; j++) {
            printf("%d ", j);
        }
        printf("\n");
    }
    return 0;
}

Example 6: Full Pyramid of *

Take your pyramid skills to new heights with this program that generates a full pyramid using asterisks.


#include <stdio.h>

int main() {
    int i, j, k;
    for(i = 1; i <= 5; i++) {
        for(j = 1; j <= 5 - i; j++) {
            printf(" ");
        }
        for(k = 1; k <= 2 * i - 1; k++) {
            printf("* ");
        }
        printf("\n");
    }
    return 0;
}

Example 7: Full Pyramid of Numbers

Create a stunning full pyramid using numbers with this easy-to-follow program.


#include <stdio.h>

int main() {
    int i, j, k;
    for(i = 1; i <= 5; i++) {
        for(j = 1; j <= 5 - i; j++) {
            printf(" ");
        }
        for(k = 1; k <= 2 * i - 1; k++) {
            printf("%d ", k);
        }
        printf("\n");
    }
    return 0;
}

Example 8: Inverted Full Pyramid of *

The ultimate challenge: create an inverted full pyramid using asterisks.


#include <stdio.h>

int main() {
    int i, j, k;
    for(i = 5; i >= 1; i--) {
        for(j = 1; j <= 5 - i; j++) {
            printf(" ");
        }
        for(k = 1; k <= 2 * i - 1; k++) {
            printf("* ");
        }
        printf("\n");
    }
    return 0;
}

Triangular Triumphs

But wait, there’s more! Let’s explore two classic triangular patterns:

Example 9: Pascal’s Triangle

Discover the beauty of Pascal’s Triangle with this intriguing program.


#include <stdio.h>

int main() {
    int i, j;
    for(i = 0; i < 5; i++) {
        for(j = 0; j <= i; j++) {
            printf("%d ", binomialCoeff(i, j));
        }
        printf("\n");
    }
    return 0;
}

int binomialCoeff(int n, int k) {
    int res = 1;
    if(k > n - k)
        k = n - k;
    for(int i = 0; i < k; ++i) {
        res = res * (n - i);
        res = res / (i + 1);
    }
    return res;
}

Example 10: Floyd’s Triangle

End your pyramid journey with a bang by creating Floyd’s Triangle.


#include <stdio.h>

int main() {
    int i, j, num = 1;
    for(i = 1; i <= 5; i++) {
        for(j = 1; j <= i; j++) {
            printf("%d ", num++);
        }
        printf("\n");
    }
    return 0;
}

Leave a Reply