Problemes ac les tableau

Résolu
alussk Messages postés 15 Date d'inscription lundi 17 octobre 2005 Statut Membre Dernière intervention 18 mars 2006 - 9 mars 2006 à 21:40
alussk Messages postés 15 Date d'inscription lundi 17 octobre 2005 Statut Membre Dernière intervention 18 mars 2006 - 10 mars 2006 à 11:56
ce code doit renvoyer la niemes plus grande valeur d'un tableau d'entier.
il ne marche pas donc si vous comprenez pourquoi éclairez moi svp

#include <stdio.h>
#include <stdlib.h>
void affichet (int nb ,int tab[50]){// fonction d'affichage
int i;
for(i=0;i<nb;i++)
printf("tab[%d]=%d \n",i,tab[i]);
}
int clast (int nb, int tab[50]){//Fonction qui classe les n plus grand chiffres du tableau en ordre
int o,i,j,max; //croissant dans un deuxieme tableau et qui renvoi la derniere
int t[nb]; //valeur du ce tableau
j=0;
for(o=0;o<nb;o++){
for(i=0;i<50;i++){ // 2) mais qd on remonte dans le for, il trouve la meme valeur que pr la
if(j<tab[i]){ // précédente itération, au lieu de renvoyé la nieme plus grande valeur
j=tab[i]; // la fonction renvoie la plus grande, et je vois absolument pas pquoi !
max=i;
}
}
tab[max]=0;// 1) mon probleme est ici, qd je met un print l'instruction a été exécutée
t[o]=j;
}
affichet(nb,t);
return t[nb];
}
void remplir (int nb, int tab[50]){//fonction de remplissage
int i,j;
j=0;
for(i=0;i<nb;i++){
tab[i]=j;
j++;
}
for(i=0;i<nb;i++){
if(i & 0x01){
tab[i]--;
}
else{
tab[i]++;
}
}
}

int main (){
int rg;
int nb=50;
int tab[50];
do{printf("Entrez le rang du tableau que vs désirez :\n");
scanf("%d",&rg);
}while(rg>=nb);
remplir(nb,tab);
affichet(nb,tab);
printf("la %d ieme plus grande valeur du tableau est : %d \n",rg,clast(rg,tab));
system("PAUSE");
return 0;
}

1 réponse

alussk Messages postés 15 Date d'inscription lundi 17 octobre 2005 Statut Membre Dernière intervention 18 mars 2006
10 mars 2006 à 11:56
mdr j=0; !!! bon bah pu bsoin d'aide !!
3
Rejoignez-nous