on écrit une condition comme ça en C
if (condition) {instructions}
tu ne dois pas mettre de ";" après la condition, seulement après chaque instruction.
Par exemple : if (var1 > 2) {var2 = 0; var3 = 4;}
Ensuite pour ton problème de else if :
déjà tu peux effectuer plusieurs test à la suite juste avec des if, dans ce cas les tests seront indépendants, l'ordinateur va effectuer tous les tests les uns après les autres. Par exemple :
if (var1 > 2) {var2 = 0; var3 = 4;}
if (var8 > 2) {var9 = 0; var10 = 4;}
"else" veut dire "sinon", par exemple ce code :
if (condition) {instruction1;}
else {instruction2;}
Si la condition est vraie (true) alors on exécute instruction1 et sinon (donc si condition est fausse) on exécute instruction2
Maintenant si tu veux que instruction2 ne soit exécutée que si une nouvelle condition est vraie, tu peux utiliser le else if :
if (condition1) {instruction1;}
else if (condition2) {instruction2;}
dans ce cas :
instruction1 s'exécute si condition1 est vraie.
instruction2 s'exécute si condition1 est fausse ET condition2 est vraie.
Or dans ton code on peut voir
if (age >= 18) {printf1;}
else if (age > 70) {printf2;}
Si tu réfléchis tu te rends compte que si age vérifie la seconde condition, alors elle vérifie forcément la première. Ce qui veut dire que quelque soit la valeur de age, le deuxième printf ne sera jamais exécuté.