Partage
  • Partager sur Facebook
  • Partager sur Twitter

les structures

    3 décembre 2019 à 23:11:50

    bonjour,

    J'essaie d'apprendre a programmer en C en utilisant le cours de Mathieu Nebra. Debut prometteur mais plus cela avance plus c'est dur, tout seul devant son PC...

    Je suis dans les structure.

    J'essaie de creer un variable perso qui prnd les coordonnees des utilisateurs

    fichier Mastructure.h :

    struct Personne

    {

        char nom[50];

        int age;

        char adresse[50];

    };

    fichier main.c:
    #include <stdio.h>
    #include <stdlib.h>
    #include "MaStucture.h"
    int main()
    {
        struct Personne utilisateur[3];
        int i=0;
        for (i=0 ; i<3 ; i++)
        {
            printf("quel est votre nom ? :");
            scanf("%s", utilisateur[i].nom);
            printf("Votre nom est : %s \n", utilisateur[i].nom);
            printf("Quelle est votre adresse ? :");
            scanf("%s", utilisateur[i].adresse);
            printf("Votre adresse est : %s\n", utilisateur[i].adresse);
            printf("quel est votre age ? :");
            scanf("%d", utilisateur[i].age);
            printf("Votre age est : %d \n", utilisateur[i].age);
        }
        for (i=0 ; i<3 ; i++)
        {
            printf("Votre nom est : %s \n", utilisateur[i].nom);
            printf("Votre adresse est : %s\n", utilisateur[i].adresse);
            printf("Votre age est : %d\n", utilisateur[i].age);
        }
        return 0;
    }
    En compilant, ca marche mais pb sur l'age... au retour je n'ai pas l'age entré mais n'importa quoi.
    La complation me donne une ramrque :
    Warning line 25 :  format"%d" expects argument of type 'int', but argument 2 has type 'int' [-Wformat=]
    La ligne 2, c'est :  scanf("%d", utilisateur[i].age);
    Je suis perdu...
    Si quelqu'un peut aider, c'est cool.
    Merci !!
    Jean Francois
    • Partager sur Facebook
    • Partager sur Twitter
      4 décembre 2019 à 1:18:30

      Il faut passer l'adresse de la variable. Tu as oublié le &:

              scanf("%d", &utilisateur[i].age);
      


      Et utilise les balises code stp, c'est plus lisible et les lignes seront numérotées.

      • Partager sur Facebook
      • Partager sur Twitter
        4 décembre 2019 à 9:27:39

        Bon sang mais c'est bien sur !!!!

        Merci de votre aide.

        Je ferai mieux avec les balises car je suis sur de revenir.

        Bonne journée a tous.

        Jean Francois

        • Partager sur Facebook
        • Partager sur Twitter
          4 décembre 2019 à 17:45:54

          tant mieux :)

          Passe le sujet en résolu du coup.

          • Partager sur Facebook
          • Partager sur Twitter

          les structures

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown