Erreur d’exécution de while
Bonjour tout le monde;
Je suis entrain de tester la solution d'un exercice en C avec l'éditeur Code:Blocks; mais après la compilation de l'exercice ça saute sur des ligne dans l’exécution;
J'ai essaye avec mon ancien projet aussi ça n'a rien changé;
je voudrais votre aide pour débloquer cette erreur
Merci d'avance;
Premier exo avec While : dans while ça affiche deux fois
un autre:
un autre:
avant la lecture du caractère
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| #include<stdio.h>
#define t 50
int main(void){
int i,j,n,nb;
char tab[t], voyelle[]={'a','e','i','j','u','y'};
i=0;
n=0;
nb=0;
printf("un caractère:");
printf("\n");
scanf("%c",&tab[i]);
while(tab[i]!=' ' ){
++i;
printf("un autre:");
printf("\n");
scanf("%c",&tab[i]);
}
n=i;
for(i=0;i<n;i++){
printf("tab[%d]=%c \n",i,tab[i]);
}
for(i=0;i<n;i++){
printf("%c ",tab[i]);
}
for(j=0;j<6;j++){
for(i=0;i<n;i++){
if(tab[i]==voyelle[j])
nb++;
}
printf("Vous avez %d fois voyelle(s) %c ",nb,voyelle[j]);
printf("\n");
nb=0;
}
return 0;
} |
le projet avec la partie Saisie:ça saute toujours deux lignes
donner le nom
donner le prenom
avant de lire ou le scanf()
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| void Saisie(struct Etudiant E1[], int *n){
int i=0;
printf("donner un numero:");
printf("\n");
scanf("%d",&E1[i].num);
while(E1[i].num!=-1){
printf("donner le nom");
printf("\n");
scanf("%c",&E1[i].nom);
printf("\n");
printf("donner le prenom");
printf("\n");
scanf("%c",&E1[i].prenom);
printf("\n");
printf("donner un numero:");
printf("\n");
scanf("%d",&E1[i].num);
i++;
}
*n=i;
} |