Bonjour tout le monde.

Je suis en train de bosser sur un petit programme qui gère des utilisateurs. J'ai un soucis au niveau de l'âge sur ma variable structurée.

Voici ma structure:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
typedef struct recensement recensement;
struct recensement
	{
	int age;
	char nom[30], prenom[30];
	};
J'ai ensuite déclaré une variable structurée:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
recensement personne[tabmaxsize]
Pour ajouter un utlisateur je passe par une fonction ajouterPersonne

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
printf("Veuillez entrer son nom :");
	scanf ("%s", p_personne.nom); //ecriture dans la variable structurée
	printf("Veuillez entrer son prenom :");
	scanf ("%s", p_personne.prenom);
	printf("Veuillez entrer son age :");
	scanf ("%i", p_personne.age);
        return p_personne;
Mon problème est dans l'affichage de ces valeurs. Le nom et prénom s'affiche bien comme je veux mais pas l'age. il m'affiche une adresse identique pour tout l'affichage de l'age.
Voici le code de l'affichage:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
for (i =0; i < index; i++)
		{
		printf("%s   |   %s   |   %i \n", personne[i].nom, personne[i].prenom, personne[i].age);
		}
Je pense que l'erreur vient du fait que les caractères sont des tableaux de char alors que l'age non mais je n'arrive pas à trouver comment obtenir les bonnes valeurs à l'écran.

Si vous aviez une piste à m'indiquer ça serait vraiment sympa.

Je vous remercie par avance de vos réponses.