Probléme sur ma fonction

Résolu
physicien -  
Arya Dröttningu Messages postés 650 Statut Membre -
Bonjour,

j'ai un probléme dansr mon programme car y a aucune erreur de programmation mais le minimum de trois nombre ne s'affiche pas !!

j'aimerai connaitre l'erreur , merci d'avance

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#define dim 3

int minimum(int tab[])
{

int i,min;
min=tab[0];

for (i=0;i=dim;i++)
{
if (tab[i]<tab[0])
{
min=tab[i];
}

}

return(min);
}

int main ()

{
int tab[dim],i,z,min;

for (i=0;i<dim;i++)
{
scanf("%d",&tab[i]);
}

z=minimum(tab);
printf("%d",&z);

system("pause");
return 0;
}

2 réponses

  1. Pacorabanix Messages postés 4122 Date d'inscription   Statut Membre Dernière intervention   663
     
    dans ta boucle for (la première)

    tu as mis au milieu " i=dim "
    au lieu de " i<dim "
    ce qui fait la boucle ne s'exécute jamais ;)
    0
  2. Arya Dröttningu Messages postés 650 Statut Membre 157
     
    Dans ta fonction minimum tu avais mis "for (i=0;i=dim;i++) " alors qu'il faut mettre "for(i=0;i<dim;i++)"

    #include<stdio.h>
    #include<stdlib.h>
    #include<math.h>
    #define dim 3
    
    
    int minimum(int tab[])
    {
    	int i,min;
    	min=tab[0];
    	for (i=0;i<dim;i++)
    	{
    		if (tab[i]<tab[0])
    		{
    			min=tab[i];
    		}
    	}
    	return(min);
    }
    
    int main ()
    {
    	int tab[dim],i,z,min;
    	for (i=0;i<dim;i++)
    	{
    		printf("Entre un nombre\n");
    		scanf("%d",&tab[i]);
    	}
    	z=minimum(tab);
    	printf("%d\n",z);
    	system("pause");
    	return 0;
    }
    0