Langage C

Bonjour, je ne sais pas comment corriger ce code svp j'ai besoin de l'aide

#include <stdio.h>

int main (void)
{
typedef struct Tbin
{
int x;
}tbin;

int i,n;

do
{printf("donner n");
scanf("%d",&n);
}while(n<100);
for(i=0; i < n; i++)
{scanf("%d",&Tbin[i].x);
}
}

3 réponses

  1. Contributeur
    typedef struct Tbin
    {
       int x;
    }Tbin;
    int main()
    {
       Tbin *b;
       int i,n;
       do
       {
            printf("donnez n");
            scanf("%d",&n);
       }while(n<100);
       b=malloc(n*sizeof(Tbin));
       for(i=0; i < n; i++)
          scanf("%d",&(b[i].x));
       return 0;
    } 
    ça devrait fonctionner.
    1. #include <stdio.h>
      #include<conio.h>

      typedef struct Tbin
      {
      int x;
      }Tbin;
      int main()
      {
      Tbin b;
      int i,n;
      do
      {printf("donner n");
      scanf("%d",&n);
      }while(n<100);
      for(i=0; i < n; i++)
      scanf("%d",&b[i].x);
      }

      je ne sais pas ou 'erreur exactement
      1. Bonjour,
        b n'étant pas un tableau ça ne marchera pas, il faudrait faire par exemple comme ceci:
        tbin b[100]; /* un tableau */  
        int i=0; /* s'assurer que i est à zéro avant de l'utiliser */  
        
        while(i<100){  
            printf("n = ");  
            scanf("%d",&b[i].x);  
            i++; /* incrémente i */  
        }


        Edit : hm oui mon code n'est pas terrible j'ai oublié la fonction de "n" excusez moi le manque de tableau et la boucle avaient perturbés mon attention ahaha