Probleme prog C - Tableau C

salut a tous voila je suis en projet de C dans mon ecole et je galére avec ceci
je cherche a trouver la valeur la plus grande de mon tableau mais sa ne marche po sa marche pour le plus petit mais pour le plus grand voici mon code merci de votre reponce

#include <stdio.h>
#include <stdlib.h>

struct joueur{
char nom[20];
char raceJ[20];
char metierJ[20];

int race;
int metier;

int PVmax;
int PV;
int PA;
int AS;
int tour;
};

struct joueur joueur1, joueur2, joueur3, joueur4, joueur5;

int main()
{
int tabM[5];
int stockM;
int compteurM;

joueur1.PV=5;
joueur2.PV=9;
joueur3.PV=12;
joueur4.PV=7;
joueur5.PV=8;

tabM[0]=joueur1.PV;
tabM[1]=joueur2.PV;
tabM[2]=joueur3.PV;
tabM[3]=joueur4.PV;
tabM[4]=joueur5.PV;

for(compteurM=0;compteurM<5;compteurM++)
{
if (tabM[compteurM]<tabM[compteurM+1])
{
stockM=compteurM+1;
}
}

joueur1.PV=tabM[0];
joueur2.PV=tabM[1];
joueur3.PV=tabM[2];
joueur4.PV=tabM[3];
joueur5.PV=tabM[4];

printf("joueur1 %d\n",joueur1.PV);
printf("joueur2 %d\n",joueur2.PV);
printf("joueur3 %d\n",joueur3.PV);
printf("joueur4 %d\n",joueur4.PV);
printf("joueur5 %d\n",joueur5.PV);

getch();
return 0;
}

Deux trois choses :

  1. sa -> ça. ça ne mange pas de pain de faire l’effort d’écrire correctement.
  2. à défaut de faire un tableau d’entier pour y stocker les conneries sur les joueurs, tu peux faire un tableau de joueur… résultat : pas de tableau inutile.
  3. Que ce soit le min ou le max : ce bout de code - écrit en C99 - fera l’affaire une fois adapté :
int min = tab[0]; // ou tab[0].champ; ...
int max = tab[0];
for ( int i = 1; i < taille_de_tab; ++i) {
  if (tab[i] < min) min = tab[i];
  if (tab[i] > max) max = tab[i];
}

Au passage, tu m’excuseras mais ton code risque de provoquer une segfault pour le cinquième élément (5+1 = 6 tabM[6] = aïe), et en général le max (ou le min) se compare par rapport à l’ensemble des valeurs, pas par rapport à la précédente…

  1. Pour finir, c’est vraiment utile de stocker dans tabM les valeurs des PV des joueurs, qui ne changent pas du tout, pour ensuite changer ces valeurs par celle de tabM (qui n’a pas changé?)

Voilà

salut sans nom merci pour ta reponce le code que je veut faire modifie la plus petit variable du tableau c’est pour ca que les valeur ne sont pas changer mais je ne vois pas ce que tu veut dire par a l’essemble du tableau encore merci

Moi non plus :slight_smile: j’ai pas pigé un traître mot de ce que tu as dis.

Ceci étant, je t’ai fourni une idée de l’algo de recherche du min et du max dans un ensemble de valeur (soit un tableau)…

re salut escuse moi je me suis mal exprimer et de plus j’ai compris le fonctionnement que tu ma montrer et il faut le reconnaitre il est beaucoup plus simple je te remerci encore une fois :slight_smile:

Heu… nicotine76 ==> http://boobeer.free.fr/CCLSMS.gif