Procedure d'insertion

Fermé
makblack Messages postés 48 Date d'inscription lundi 28 octobre 2013 Statut Membre Dernière intervention 4 novembre 2016 - 16 nov. 2013 à 13:57
makblack Messages postés 48 Date d'inscription lundi 28 octobre 2013 Statut Membre Dernière intervention 4 novembre 2016 - 24 nov. 2013 à 20:04
Bonjour,

je vous'explqiue en quoi consiste mon TP :
normalment on doit faire un algo de gestion d'équipe de foutball
donc l'algo demande d'inseret des joueurs
mai ils doivent etre classé par poste ( par exp le gardien de but doit etre dans la 1ere céllule de la liste inssi de suite )
tout en prenant en compte qu'on peut pas metre plus d'un joueur avec le meme nom dans le meme poste (^par exp on peut pas metre 2 gardiens avec le meme nom)
voila tout

mai bon j'ai un prob avec ma procédure mai j'arrive pas a trouvé le prob .

vouci donc ma procédure d'insertion :


ajouter ()
{
int i,in,j,k;
while (in!=0)
{
printf ("|ENTREE La SOMME DU JOUEUR|\n");
scanf("%d",&s);
printf ("|ENTREE LE NUMEREAU DU JOUEUR|\n");
scanf("%d",&num);
printf ("|ENTREE LE LE NOM DU JOUEUR|\n");
scanf("%s",&n1);
printf ("|ENTREE LE LE PRENOM DU JOUEUR|\n");
scanf("%s",&pre);
printf ("|ENTREE LA POSITION DU JOUEUR|\n");
scanf("%s",&p1);

qtr=player;

while (qtr->suiv!=NULL && (strcmp(qtr->nom,n1))!=0)
qtr=qtr->suiv;
if (qtr->suiv!=NULL)
{
strcpy (n2,qtr->nom);
for(i=0;i<=strlen(n1);i++)
{
j=i;
if(n1[i]=n2[j])
k=k+1;
}
if(k==strlen(n1))
{
strcpy (p2,qtr->position);

if(p2[0]==p1[0])
{
printf("le joueur existe déja");
goto a;
}

}
}
trad *ptr= malloc (sizeof(trad));
strcpy (ptr->position,p1);
strcpy (ptr->nom,n1);
strcpy (ptr->prenom,pre);
ptr->somme=s;
ptr->numero=num;

if (player==NULL)
{
player=ptr;
ptr->suiv=player;
}
else
{
qtr=player;
strcpy(p2,qtr->position);
while (qtr->suiv!=NULL && p1[0]==p2[0])
{
qtr=qtr->suiv;
strcpy(p2,qtr->position);
}
if(qtr->suiv==NULL)
{
ptr->suiv=qtr->suiv;
qtr->suiv=ptr;
}
else
{
strcpy(p2,qtr->position);
while(qtr->suiv!=NULL && p1[0]==p2[0])
{
qtr=ind;
qtr=qtr->suiv;
qtr->prec=ind;
strcpy(p2,qtr->position);
}
if(qtr->suiv==NULL)
{
ptr->suiv=qtr->suiv;
qtr->suiv=ptr;
}
else
{
qtr->prec=ptr;
ptr->suiv=qtr;
}
}
}
a :printf ("voulez vous entree un autre joueur : 1=oui / 0=no ? \n");
scanf("%d",&in);
}
}

A voir également:

1 réponse

Red_Line Messages postés 6 Date d'inscription lundi 13 mai 2013 Statut Membre Dernière intervention 4 janvier 2014
24 nov. 2013 à 18:14
qtr et player??
0
makblack Messages postés 48 Date d'inscription lundi 28 octobre 2013 Statut Membre Dernière intervention 4 novembre 2016 8
24 nov. 2013 à 20:04
qtr pointeur pour parcourir la liste et le player c l'entete de la liste
0