Où mettre des traits d'union ?
La règle est plutôt simple. Les traits d'union servent à lier les nombres composés plus petits que cent sauf autour du mot « et », qui remplace alors le trait d'union. Partout ailleurs, il n'y a que des espaces. Exemples :

  • \(28 = vingt-huit\) ;
  • \(31 = trente et un\) ;
  • \(124 = cent vingt-quatre\).

Concernant les accords, le mot cent est invariable sauf quand il est précédé d'un nombre qui le multiplie et n'est pas suivi par un autre nombre cardinal.

Pour mettre cent au pluriel, il faut donc (première condition) qu'il soit précédé d'un nombre qui le multiplie. Par exemple deux cents (deux fois cent) mais pas mille cent (1 100) (mille plus cent).
La deuxième condition est qu'il ne doit pas être suivi par un autre nombre cardinal. On écrira donc deux cent trois et deux cent mille mais deux cents millions car million (comme milliard) est un nom et non un adjectif cardinal.

Le mot vingt suit exactement la même règle que le mot cent.