Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1802 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Probleme syntaxe ? [résolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Probleme syntaxe ? [résolu]

n°2204008
mgm0047a
Posté le 24-09-2013 à 20:17:53  profilanswer
 

Bonjour !!
 
Voila je suis tout nouveau dans la programmation, j'ai commencé il y a seulement 2 jours !
 
Je m'amuse à réaliser des exercices de débutant mais déjà ici je ne comprends pas quelque chose !!
Je voulais déjà tester avec un petit algorithme tout simple pour me dire la valeur minimal et la valeur maximal d'un tableau.
 
Cependant malgré cela, la valeur minimal ne change jamais ! et est égale toujours à 0 ! Savez vous pourquoi ? J'ai fais exprès de créer deux "IF" pour être sur que ça ne soit pas un problème de construction d'algorithme.
 
Merci d'avance des réponses !
 
Voici mon code :
 
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
 
int main()
{
  int n,i;
  float tableau[n];
  float val_min, val_max, etendue;
   
  val_max = tableau[0];
  val_min = tableau[0];
   
  printf("Entrer le nombre de valeurs: \n" );
  scanf("%d",&n);
   
   
 
  for(i=0;i<n;i++)
    {
      printf("Entrer la valeur reelle : \n" );
      scanf("%f",&tableau[i]);
    }
     
     
  for(i=0;i<n;i++)
  {
       if(tableau[i]<val_min)
       {
            val_min=tableau[i];
       }
       if(tableau[i]>val_max)
       {
            val_max=tableau[i];
       }
 
 
                                                   
  }
 
  printf("La plus grande valeur est : %.2f et la plus petite valeur est : %.2f\n",val_max, val_min);
     
   
  system("PAUSE" );
  return 0;
}


Message édité par mgm0047a le 24-09-2013 à 23:25:25
mood
Publicité
Posté le 24-09-2013 à 20:17:53  profilanswer
 

n°2204024
Farian
Posté le 24-09-2013 à 21:36:02  profilanswer
 

Bonsoir !
 
Ne cherchez pas très loin, l'erreur doit être ici :  

Code :
  1. int n,i;
  2.   float tableau[n];


 
En créant les valeurs comme ça, comment voulez-vous que le compilateur sache quelle taille donner au tableau ?
 
Refaites votre allocation et cela devrait aller mieux.
 
Bonne continuation !

n°2204026
tpierron
Posté le 24-09-2013 à 21:40:05  profilanswer
 

Pas trop mal pour un débutant. Il y a juste quelques expressions mal placées dans le code:

Code :
  1. float tableau[n];


 
À l'endroit où est placé cette déclaration, "n" n'est pas initialisé. Donc peut valoir n'importe quoi, bien qu'en mode débug, ça vaudra probablement 0. Il faut donc placer cette instruction après que "n" soit initialisé, soit donc après :

Code :
  1. scanf("%d",&n);


 
Pareil pour ces deux lignes :

Code :
  1. val_max = tableau[0];
  2. val_min = tableau[0];


 
Quand elles sont appelées, tableau[0] n'est pas initialisé, donc à placer après la boucle d'initialisation.
 

n°2204057
mgm0047a
Posté le 24-09-2013 à 23:23:14  profilanswer
 

Ah d'accord très bien !! Je vous remercie :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Probleme syntaxe ? [résolu]

 

Sujets relatifs
[FICO Xpress] étrange erreur - problème syntaxeProbléme syntaxe macro excel 4
[RESOLU][c++] probleme de syntaxe dans un héritageerreur de syntaxe, probleme langage C
[Résolu] Problème syntaxe IE sur lien vers une page avec lecteur mp3Problème de syntaxe. Mettre 2 classes pour une page
[resolu] Probleme de syntaxe dans un UPDATEGros probleme de syntaxe php et/ou html
[Résolu] Problème syntaxe xhtmlProblème avec fonction header() + syntaxe.
Plus de sujets relatifs à : Probleme syntaxe ? [résolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR