bonjour,
j'aimerai que vous m'aidez a identifier et corriger une ou des erreurs dans chacun des cas suivants:
a) if (age>=65);
printf("il est superieur ou egal à 65\n");
else
printf("il est inferieur à 65\n");
pour ce cas j'ai identifier une erreur au niveau de la condition if le point virgule ne se trouve pas devant la condition
b)int x=1, total;
while(i<=10){
total+=x;
++x;
}
c)void f(float a)
{
float a;
printf(''%f",a);
}
ici on etait pas obliger de declarer float a dans la declaration fonction
d) for( x=100, x>=1 , x++)
printf("%d"\n,x);
ici a la place de la virgule c'est plutot un point virgule
et au lieu de >= c'est plutot <= si non on aurra une boucle infinir
e) for(y=.1 ; y!=1.0; y+=.1)
printf("%f\n",y);
ici j'ai pas compris pourquoi le .
f) int tot (int n)
{ if (n==0) return 0;
else
n==tot(n-1);
}
merci d'avance pour votre aide
Bonjour,
a) il ne doit pas y avoir de ; ni avant ni après la condition
b) i n'est ni déclaré, ni initialisé, ni modifié dans la boucle
c) le paramètre local a ne reçoit aucune valeur. printf produira une erreur ou une valeur incorrecte. Le paramètre a passé dans l'appel de procédure sera inutilisé
d)Ok
e) Le type de y est absent. La troisième expression dans la parenthèse n'est pas un test. Son évaluation ne donnera pas la valeur booléenne attendue.
f) L'expression dans le else est un test, et ne renvoie rien. Si c'était une affectation qui était souhaitée, c'est incorrect aussi: on ne modifie pas la valeur d'un paramètre donnée à l'intérieur d'une procédure.
Sauf souvenirs trop anciens de ma part.
Bonjour,
e) Le type de y est absent. OK
La troisième expression dans la parenthèse n'est pas un test. Son évaluation ne donnera pas la valeur booléenne attendue.
ça tombe bien cette 3ème expression doit être une modification du paramètre de boucle, pas un test 


Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :