le probleme c´est que le = est un operateur d´affectation.
donc si tu marque :
if ( signe[numero] = 43)
il t´affectera 43 a signe[numero]
si tu veux pouvoir comparer leurs valeur, a ce moment la il te faut marquer:
if ( signe[numero] == 43)
mais je te renvoie a ton bouquin.
et le switch c´etait pour une meileur lisibilite.
sinon tel que c´est ecrit dans ton premier message, on dirait que t´as nain brique les if.
m´enfin, j´y verrais mieux demain!