C Programming Code To Create Pyramid and Pattern

In this example, you will learn to print half pyramid, pyramid, inverted pyramid, Pascal's Triangle and Floyd's triangle in C Programming.
C programming pyramids

To understand this example, you should have the knowledge of the following C programming topics:

Programs to print triangles using *, numbers and character

Program to print half pyramid using *

*
* *
* * *
* * * *
* * * * *

Source Code

#include <stdio.h>
int main() {
    int i, j, rows;
    printf("Enter number of rows: ");
    scanf("%d", &rows);
    for (i = 1; i <= rows; ++i) {
        for (j = 1; j <= i; ++j) {
            printf("* ");
        }
        printf("\n");
    }
    return 0;
}

Program to print a half pyramid using numbers

1
1 2
1 2 3
1 2 3 4
1 2 3 4 5

Source Code

#include <stdio.h>
int main() {
    int i, j, rows;
    printf("Enter number of rows: ");
    scanf("%d", &rows);
    for (i = 1; i <= rows; ++i) {
        for (j = 1; j <= i; ++j) {
            printf("%d ", j);
        }
        printf("\n");
    }
    return 0;
}

Programs to print inverted half pyramid using * and numbers

Inverted half pyramid using *

* * * * *
* * * *
* * * 
* *
*

Source Code

#include<stdio.h>
int main() {
    int i, j, rows;
    printf("Enter number of rows: ");
    scanf("%d", &rows);
    for (i=rows; i>=1; --i) { 
       for (j=1; j<=i; ++j)
        { printf("* "); }
        printf("\n");
    }
    return 0;
}

Inverted half pyramid using numbers

1 2 3 4 5
1 2 3 4 
1 2 3
1 2
1

Source Code

#include <stdio.h>
int main() {
    int i, j, rows;
    printf("Enter number of rows: ");
    scanf("%d", &rows);
    for (i = rows; i >= 1; --i) {
        for (j = 1; j <= i; ++j) {
            printf("%d ", j);
        }
        printf("\n");
    }
    return 0;
}

Programs to display pyramid and inverted pyramid using * and digits

Program to print full pyramid using *

        *
      * * *
    * * * * *
  * * * * * * *
* * * * * * * * *

Source Code

#include <stdio.h>
int main() {
    int i, space, rows, k = 0;
    printf("Enter number of rows: ");
    scanf("%d", &rows);

    for (i = 1; i <= rows; ++i, k = 0) {
        for (space = 1; space <= rows - i; ++space) {
            printf("  ");
        }
        while (k != 2 * i - 1) {
            printf("* ");
            ++k;
        }
        printf("\n");
    }

    return 0;
}

Program to print pyramid using numbers

        1
      2 3 2
    3 4 5 4 3
  4 5 6 7 6 5 4
5 6 7 8 9 8 7 6 5

Source Code

#include <stdio.h>
int main() {
    int i, space, rows, k = 0, count = 0, count1 = 0;
    printf("Enter number of rows: ");
    scanf("%d", &rows);
    for (i = 1; i <= rows; ++i) {
        for (space = 1; space <= rows - i; ++space) {
            printf("  ");
            ++count;
        }
        while (k != 2 * i - 1) {
            if (count <= rows - 1) {
                printf("%d ", i + k);
                ++count;
            } else {
                ++count1;
                printf("%d ", (i + k - 2 * count1));
            }
            ++k;
        }
        count1 = count = k = 0;
        printf("\n");
    }
    return 0;
}

Inverted full pyramid using *

* * * * * * * * *
  * * * * * * *
    * * * * *
      * * *
        *

Source Code

#include <stdio.h>
int main() {
    int rows, i, j, space;
    printf("Enter number of rows: ");
    scanf("%d", &rows);
    for (i = rows; i >= 1; --i) {
        for (space = 0; space < rows - i; ++space)
            printf("  ");
        for (j = i; j <= 2 * i - 1; ++j)
            printf("* ");
        for (j = 0; j < i - 1; ++j)
            printf("* ");
        printf("\n");
    }
    return 0;
}

Print Pascal's triangle

           1
         1   1
       1   2   1
     1   3   3    1
   1  4    6   4   1
 1  5   10   10  5   1

Source Code

#include <stdio.h>
int main() {
    int rows, coef=1, space, i, j;
    printf("Enter number of rows: ");
    scanf("%d", &rows);
    for (i=0; i<rows; i++) {
        for (space=1; space<=rows-i; space++)
            printf("  ");
        for (j=0; j<=i; j++) {
               if (j==0||i==0)
               coef=1;
            else
               coef=coef*(i-j+1)/j;
            printf("%4d", coef);
        }
        printf("\n");
    }
    return 0;
}

Print Floyd's Triangle

1
2 3
4 5 6
7 8 9 10

Source Code

#include <stdio.h>
int main() {
    int rows, i, j, num = 1;
    printf("Enter number of rows: ");
    scanf("%d", &rows);
    for (i = 1; i <= rows; i++) {
        for (j = 1; j <= i; ++j) {
            printf("%d ", num);
            ++num;
        }
        printf("\n");
    }
    return 0;
}