#include // protótipos de funções void produtoescalar(int m[][100], int l, int c, int e); void imprimematriz(int m[][100], int l, int c); void lematriz(int m[][100], int *l, int *c); // declarações de funções void produtoescalar(int m[][100], int l, int c, int e) { int i, j; for (i = 0; i < l; i++) for (j = 0; j < c; j++) m[j][i] *= e; } void lematriz(int m[][100], int *l, int *c) { int i, j; printf("\nDigite a dimensão da matriz:"); scanf("%d %d", l, c); printf("\nDigite os elementos da matriz:"); for (i = 0; i < *l; i++) for (j = 0; j < *c; j++) scanf("%d", &m[i][j]); } void imprimematriz(int m[][100], int l, int c) { int i, j; printf("\nA dimensão da matriz é %d x %d.\n", l, c); printf("Os elementos são: \n"); for (i = 0; i < l; i++) { for (j = 0; j < c; j++) printf("%3.2d ", m[i][j]); printf("\n"); } } int main() { int l, c, escalar; int mat[100][100]; // Imprime a matriz original l x c lematriz(mat, &l, &c); // Imprime a matriz original l x c imprimematriz(mat, l, c); printf("Digite o valor do escalar: "); scanf("%d", &escalar); // Invoca a função transposta produtoescalar(mat, l, c, escalar); // Imprime a matriz transpota c x l imprimematriz(mat, c, l); return (0); }