solo te faltaria inicializar las matrices D (costo) y P (predecesores) que es muy sencilo o pasarlas como referencia ...
la cantidad es la cantidad maxima de la matriz que creastes!
Código
Void Floyd() { for(int i=0; i< cantidad;i++) for(int j=0; j<cantidad; j++) for(int k=0; k<cantidad; k++) if(matriz[j][k]>(matriz[j][i]+ matriz[i][k])) { costos[j][k]=matriz[j][i]+ matriz[i][k]; predecesor[j][k]; } }
ya lo otro seria implemenar el agoritmo que busque el camino minimo usando estas matrices. Si tienes duda en esto te puedo ayudar!
saludos desde cuba