Tes incréments sont mal placés
Par exemple, tu commence par incrémenter i en début de boucle puis tu met quelque chose dans data[ i]
Donc tu écris a l'index 1 du tableau au lieu de 0
pareil avec mot
Tu incrément d'abord j puis tu ecris dans mot[j] c'est à dire à partir de 1
Donc quand tu affiche mot, à l'index 0 il y a problamement un code '\0' == fin de chaine.