How to get the row of Pascal triangle given an integer rowIndex in C

1 Answer

0 votes
#include <stdio.h>
#include <stdlib.h>

int* getPascalTriangleRow(int rowIndex) {
    int* row = (int*)malloc((rowIndex + 1) * sizeof(int));
    if (row == NULL) {
        fprintf(stderr, "Memory allocation failed\n");
        exit(1);
    }

    row[0] = 1;

    for (int i = 1; i <= rowIndex; i++) {
        row[i] = (long long)row[i - 1] * (rowIndex - i + 1) / i;
    }

    return row;
}

int main() {
    int rowIndex = 4;
    int* row = getPascalTriangleRow(rowIndex);

    for (int i = 0; i <= rowIndex; i++) {
        printf("%d ", row[i]);
    }
    printf("\n");

    free(row);
    
    return 0;
}



/*
run:

1 4 6 4 1 

*/

 



answered Aug 3, 2025 by avibootz
...