Mon program ne s'execute pa

ocknel -  
Loandunord Messages postés 92 Statut Membre -
Bonjour, mon programme ne s'exécute pas ,la ligne 70 est signalée com etan la souce
de l'erreur aide moi a faire executer ce programme

#include<stdio.h>
#include<conio.h>
main()
{int h,n,choix,s,v;
printf("choisissez\n");
printf("1-cadres superieurs\n");
printf("2-cadres moyens\n");
printf("3-ouvriers\n");
printf("entrez votre choix\n");
scanf("%d",&choix);
switch(choix)
{case '1':printf("saisir le nombres de cadres superieurs\n");
scanf("%d",&n);
printf("saisir nombre d'heures\n");
scanf("%d",&h);
do
{scanf("%d",&h);
if(h>0&&h<=40)
s=h*8000;
if(h<=60)
{v=h-40;
s=12000+v*(8000+(8000*50)/100);}
if(h<=70)
{v=h-60;
s=12000+v*(8000+(8000*50)/100)+v*(8000+(8000*75)/100);}
printf("le salaire de ce cadre superieur est %d",s);
printf("suivant\n");
n=n-1;}
while(n>0);
break;
case '2':printf("saisir le nombres de cadres moyens\n");
scanf("%d",&n);
printf("saisir nombre d'heures\n");
scanf("%d",&h);
do
{scanf("%d",&h);
if(h>0&&h<=40)
s=h*4500;
if(h<=60)
{v=h-40;
s=4500*h+v*(4500+(4500*50)/100);}
if(h<=70)
{v=h-60;
s=4500*40+v*(4500+(4500*50)/100)+v*(4500+(4500*75)/100);}
printf("le salaire de ce cadre moyen est %d",s);
printf("suivant\n");
n--;}
while(n>0);
break;
case '3':printf("saisir le nombres des ouvrier\n");
scanf("%d",&n);
printf("saisir nombre d'heures\n");
scanf("%d",&h);
do
{scanf("%d",&h);
if(h>0&&h<=40)
s=h*2500;
if(h<=60)
{v=h-40;
s=40*2500+v*(2500+(2500*50)/100);}
if(h<=70)
{v=h-60;
s=40*2500+v*(2500+(2500*50)/100)+v*(2500+(2500*75)/100);}
printf("le salaire de cet ouvrier est %d",s);
printf("suivant\n");
n--;}
while(n>0);
break;
default
printf("mauvais choix"); cè ici ke l'erreur è signalé
getch();
}

3 réponses

thanassos Messages postés 2624 Statut Contributeur 137
 
Bonjour,
je peux me tromper mais essaye sans les guillemets autour de tes valeurs de case. tu l'a défini en int et tu demande un char avec 'x'
1
KX Messages postés 19031 Statut Modérateur 3 020
 
En effet, soit la variable choix est un char, soit on doit enlever les apostrophes.
Ou alors il faut entrer 49 pour le '1', 50 pour le '2' et 51 pour le '3'
0
KX Messages postés 19031 Statut Modérateur 3 020
 
Il faut un ":" après default. De plus il te manque une accolade à la fin.

	default:
		printf("mauvais choix");
	} // fin du switch
		
	getch();
} // fin du main
1
Loandunord Messages postés 92 Statut Membre 46
 
Excuce moi je suis encore qu'un apprenti et encore ^^ mais c'est programmé en quelle langue ? c'est du C non ?
Tu veux une réponse fiable ? Fait activer ton cerveau et cherche !
0
KX Messages postés 19031 Statut Modérateur 3 020
 
Oui c'est du langage C POSIX
0
Loandunord Messages postés 92 Statut Membre 46
 
merci
0