« Exercices en langage C/Tableaux statiques » : différence entre les versions

 
<div style="width:70%">{{Boîte déroulante|titre=Solution|contenu =
<source lang="c">
 
int position (int t[], int taille, int x) //On est obligé de donner la taille du tableau
{
int i;
int result = -1;
 
for (i = 0; i < taille; i++)
{
if (t[i] == x)
{
result = i;
break;
}
}
return result;
}
</source>
 
Si on est en C99, il est possible de déclarer <tt>i</tt> dans le <tt>for</tt> :
<source lang="c">
int position (int t[], int taille, int x)
{
int result = -1;
 
for (int i = 0; i < taille; i++)
{
/* ... */
</source>
 
Le fichier source prêt à compiler :
int position (int t[], int taille, int x)
{
intwhile i;(taille > 0)
int result = -1;
 
for (i = 0; i < taille; i++)
{
if (t[i] == x)--taille;
{if (t[taille] == x)
resultreturn = itaille;
break;
}
}
return result-1;
}
 
int main(void)
{
int tableau[] = {2 2, 5 , 45 , 3 , 9 };
int x, pos;
 
printf("x ? ");
scanf("%d", &x);
 
printf("x ? ");
pos = position(tableau, 5, x);
scanf("%d", &x);
 
printf("La position de x est : %d\n", posposition(tableau, 5, x));
return 0;
}
</source>
Utilisateur anonyme