Ciao a tutti.
Il problema che mi è stato posto è, date due coppie di numeri, (a,b) e (c,d), generare delle matrici casuali A(a,b) e B(c,d).
Una volta fatto questo scrivere, se possibili, la somma A+B, il prodotto AxB e BxA (non è commutativo, si sa...) e le trasposte T(A) e T(B).

Per generare le due matrici uso una funzione

void crea (a,b) che con una rand() mi crea la matrice....Ma!

1. Essendo la funzione void, cioè non rendendo nulla, come faccio poi a riprenderne gli elementi per eseguirci le successive operazioni?

La soluzione sarebbe quella di non usare una funzione void, ma una che mi renda una matrice di interi A[a][b] (analogamente per B). Solo che non so come fare una cosa simile. Chi mi potrebbe aiutare?

I valori a e b non li posso mettere come define, in quanto devo assegnarli io dal programma (sennò sarebbe facile...). Quindi come mi converrebbe agire?