#include <stdio.h> #define MAX 100 int main() { int m, n, /* dimensoes da matriz A */ nb, p, /* dimensoes da matriz B */ i, j, k; float A[MAX][MAX], B[MAX][MAX], C[MAX][MAX]; printf("Digite as dimensoes (mXn) da matriz A: "); scanf("%d", &m); scanf("%d", &n); printf("Digite a matriz A:\n"); for (i = 0; i < m; i++) for (j = 0; j < n; j++) scanf("%f", &A[i][j]); printf("Digite as dimensoes (nXp) da matriz B: "); scanf("%d", &nb); scanf("%d", &p); if (nb != n) printf("Nao existe o produto da matriz A por B!!"); else { printf("Digite a matriz B:\n"); for (i = 0; i < n; i++) for (j = 0; j < p; j++) scanf("%f", &B[i][j]); /* calculo do produto */ for (i = 0; i < m; i++) for (j = 0; j < p; j++){ C[i][j] = 0; for (k = 0; k < n; k++) C[i][j] = C[i][j] + A[i][k] * B[k][j]; } /* impressao do resultado */ printf("Matriz A X B: \n"); for (i = 0; i < m; i++) { for (j = 0; j < p; j++) printf("%f ", C[i][j]); printf("\n"); } } return 0; }