Lorsque j'essaie d'exécuter mon programme, j'obtiens une erreur. Je ne peux pas lire la dernière valeur « ch
»:Pourquoi cette fonction C ne retourne-t-elle pas une valeur entière?
int choi(char *Tvide[48])//permet de choisir la place selon les choix de l utilisateur
{
char fum, classe, pos;
printf("\n S.V.P choisissez votre Classe (A:1 ere classe)/(B: 2 eme classe): ");
classe = getche();
printf("\n Est ce que vous etes fumeur (O:fumeur)/(N:non fumeur):");
fum = getche();
printf("\n S.V.P vous preferez s''assoir pres de la fenetre ou du couloir(C:couloir)/(F:fenetre):");
pos=getche();
int Tfum[24] = {3,4,7,8,11,12,15,16,19,20,23,24,27,28,31,32,35,36,39,40,43,44,47,48};
int Tnfum[24] = {1,2,5,6,9,10,13,14,17,18,21,22,25,26,29,30,33,34,37,38,41,42,45,46};
int Tfen[24] = {1,4,5,8,9,12,13,16,17,20,21,24,25,28,29,32,33,36,37,40,41,44,45,48};
int Tcol[24] = {2,3,6,7,10,11,14,15,18,19,22,23,26,27,30,31,34,35,38,39,42,43,46,47};
int k;
char Tdispo[48];
for(k=1; k<=48; k++) { Tdispo[k]='o'; } // on met içi le tableau des places vides
if (classe=='A')
{
for(k=9;k<=48;k++) { Tdispo[k]='n'; }
}
if (classe=='B')
{
for(k=1;k<=9;k++) { Tdispo[k]='n'; }
}
if (fum=='O')
{
for(k=1;k<=24;k++) { Tdispo[Tnfum[k]]='n'; }
}
if (fum=='N')
{
for(k=1;k<=24;k++) { Tdispo[Tfum[k]]='n'; }
}
if (pos=='C')
{
for(k=1;k<=24;k++) { Tdispo[Tfen[k]]='n'; }
}
if (pos=='F')
{
for(k=1; k<=24; k++) { Tdispo[Tcol[k]]='n'; }
}
int s;
printf("Les places disponibles sont:");
for(s=1; s<=48; s++)
{
if(Tdispo[s] == 'o') { printf("%d",s,"~"); }
}
int ch;
printf("\n S.V.P introduire votre choix :");
scanf("%d",ch);
Tvide[ch]=='n';
int ch1 = ch;
return ch1;
}
Ce qui pourrait être la cause de ce comportement?
Pourriez-vous s'il-vous-plaît essayer de formater ce message un peu mieux? – senfo
Ne publiez pas de code commenté. Publier un programme minimal et autonome qui présente toujours le problème. Essayez d'utiliser les fonctions C standard le cas échéant ou spécifiez la combinaison compilateur/plate-forme. –
Vous êtes beaucoup plus susceptible d'obtenir des réponses utiles si vous simplifiez le problème que vous essayez de résoudre. Plus précisément, faites bouillir votre problème pour être aussi simple que possible. Expliquez ce que vous essayez de faire, ce que vous attendez et ce que vous voyez réellement. La plupart des gens verront votre rame de code et cliqueront sur leur bouton de retour pour passer à une question différente. – jason