Skip to content

luc067.c

Problem Statement

Write a program to multiply any two 3 x 3 matrices.

Metadata

Property Detail
Author Amit Dutta amitdutta4255@gmail.com
Date 08 Feb 2026
License MIT License (See the LICENSE file for details)

Actions

Raw View on GitHub

💡 You can print or save this file by opening Raw and using your browser.

Source Code

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

int main()
{
    int mat1[3][3], mat2[3][3], res[3][3];
    int i, j, k;

    printf("Enter elements of first 3x3 matrix:\n");
    for (i = 0; i < 3; i++)
        for (j = 0; j < 3; j++)
            scanf("%d", &mat1[i][j]);

    printf("Enter elements of second 3x3 matrix:\n");
    for (i = 0; i < 3; i++)
        for (j = 0; j < 3; j++)
            scanf("%d", &mat2[i][j]);

    // Initialize result matrix to 0
    for (i = 0; i < 3; i++)
        for (j = 0; j < 3; j++)
            res[i][j] = 0;

    // Multiplication Logic
    for (i = 0; i < 3; i++)
    {
        for (j = 0; j < 3; j++)
        {
            for (k = 0; k < 3; k++)
            {
                res[i][j] += mat1[i][k] * mat2[k][j];
            }
        }
    }

    printf("\nResult of Multiplication:\n");
    for (i = 0; i < 3; i++)
    {
        for (j = 0; j < 3; j++)
        {
            printf("%4d ", res[i][j]);
        }
        printf("\n");
    }

    return 0;
}