Non il y a un bug !
tu declares :
int etat[5] = {0,0,0,0,0};
or le dernier indice accessible est : etat[4] car en C on indice à partir de 0.
Donc tu as un dépassement de buffer. Il ne cause pas de problèmes pour le moment. Mais si tu ajoutes d'autres variable et code, certaines seront écrasées par ce dépassement de buffer.
Si tu veux corriger :
-soit tu augmente de 1 la taille du tableau etat.
-soit tu indices tes variables etat avec un indeice de moins dans ta fonction bouton.