Prima di tutto, devi ancora iniziare da zero o cerchi consigli per procedere con la parte ricorsiva?
La parte di lettura del file e inizializzazione di matrice e lista di parole è abbastanza semplice e già affrontata anche in altri esercizi, perciò cerco di darti direttamente qualche consiglio sul resto.
L'obiettivo è quello di scrivere una funzione che cerca di comporre una parola scorrendo verso destra e verso giù, aggiornando ricorsivamente il percorso che effettua. La prima cosa che puoi provare a fare è di scorrere la matrice cella per cella e controllare se la parola che stai analizzando può iniziare da lì, così da richiamare la tua funzione di ricerca e controllare se la trova ritornandoti il percorso corretto.
In ogni caso se sei alle prime armi con la ricorsione e non ti sei ancora esercitato abbastanza ti consiglio di farlo prima di cercare di risolvere l'homework, questo è l'argomento meno banale del corso ed è necessario perderci un minimo di tempo per prenderci la mano. Altro consiglio utile è di imparare (se non l'hai già fatto) ad utilizzare il debugger in quanto lavorare con le print per capire cosa sta succedendo nella tua funzione ricorsiva è leggermente meno intuitivo di come lo è solitamente e potrebbe risultare più complesso capire perché il tuo codice non è corretto.