C Program to Print the Sum of Each Row and Column of a Given Matrix

In this tutorial, we will learn about how to create a program in C that will ask the user to enter any 3*3 matrix as input and print the sum of all elements present in each row and column along with its whole total. Here is the program:

#include<stdio.h>
#include<conio.h>
int main()
{
    int mat[3][3], i, j, rowtot, coltot, tot=0;
    printf("Enter 3*3 matrix elements: ");
    for(i=0; i<3; i++)
    {
        for(j=0; j<3; j++)
        {
            scanf("%d", &mat[i][j]);
        }
    }
    printf("\nThe Matrix is:\n");
    for(i=0; i<3; i++)
    {
        for(j=0; j<3; j++)
        {
            printf("%d\t",mat[i][j]);
        }
        printf("\n");
    }
    printf("\n");
    for(i=0; i<3; i++)
    {
        rowtot=0;
        coltot=0;
        for(j=0; j<3; j++)
        {
            rowtot = rowtot + mat[i][j];
            coltot = coltot + mat[j][i];
            tot = tot + mat[i][j];
        }
        printf("\nRow %d Total = %d\t\t", i+1, rowtot);
        printf("Column %d Total = %d", i+1, coltot);
    }
    printf("\n\nWhole Total = %d", tot);
    getch();
    return 0;
}

The program was written in the Code::Blocks IDE; therefore, after a successful build and run, here is the sample run. This is the first snapshot of the sample run:

c program row column total matrix

Supply any 3*3 matrix element and press the ENTER key to see the output. At output, you will see the matrix, then the row-wise row total and the column-wise column total, then the whole total of the matrix elements as shown in the second snapshot of the sample run:

row column whole total of matrix c

Here are some of the main steps used in the above program:

Here is the modified version of the above program. The question is: write a program to read a value in a matrix and print its value along with its row total, column total, and whole total. Here we have displayed the matrix along with its row number and column number.

#include<stdio.h>
#include<conio.h>
int main()
{
    int mat[3][3], i, j, rowtot, coltot, tot=0;
    printf("Enter 3*3 matrix elements: ");
    for(i=0; i<3; i++)
    {
        for(j=0; j<3; j++)
        {
            scanf("%d", &mat[i][j]);
        }
    }
    printf("\nThe Matrix is:\n");
    printf("\t\t[Column 1]\t[Column 2]\t[Column 3]\n\n");
    for(i=0; i<3; i++)
    {
        printf("[Row %d]\t\t", i+1);
        for(j=0; j<3; j++)
        {
            printf("%d\t\t",mat[i][j]);
        }
        printf("\n");
    }
    printf("\n");
    for(i=0; i<3; i++)
    {
        rowtot=0;
        coltot=0;
        for(j=0; j<3; j++)
        {
            rowtot = rowtot + mat[i][j];
            coltot = coltot + mat[j][i];
            tot = tot + mat[i][j];
        }
        printf("\nRow %d Total = %d\t\t", i+1, rowtot);
        printf("Column %d Total = %d", i+1, coltot);
    }
    printf("\n\nWhole Total = %d", tot);
    getch();
    return 0;
}

Here is the final snapshot of the sample run of the above program:

print row total column total c

C Quiz


« Previous Program Next Program »