Probleme dans un programme en c

Résolu
reggaerai Messages postés 15 Date d'inscription   Statut Membre Dernière intervention   -  
reggaerai Messages postés 15 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
j'ai un problème , c'est qu'on je fait la recherche pas chaine de caractères ( nom,prénom ,ville) le recherche passe bien, mais quand je fait le recherche par les int ca marche pas il me donne le messages d'erreur (ex : ce numéro n'existe pas)
voila le programme : et merci -_-
#include<conio.h>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int n,i,choix,condition2,trouv;
char condition1[10];
struct personne
{
char nom[10],prenom[10],ville[10];
int telephone,cp,rue,numero;
};
struct personne p[10];
void nom ()
{
printf("\n Donner le nom que vous voulez rechercher : ");
scanf("%s",&condition1);
trouv=0;
printf("les resultats trouv‚s sont : ");
for(i=0;i<n;i++)
{
if(strcmp(condition1,p[i].nom)==0)
{
printf("\n\nle nom : %s \nle prenom: %s \nlaville : %s \nle telephone : %d \nle code postale : %d \nla rue : %d \nle numero : %d ",p[i].nom,p[i].prenom,p[i].ville,p[i].telephone,p[i].cp,p[i].rue,p[i].numero);
trouv=1;
}
}
if(!trouv)
{
printf("ce nom n'existe pas");
}
}
void prenom ()
{
printf("\n Donner le prenom que vous voulez rechercher : ");
scanf("%s",&condition1);
trouv=0;
printf("les resultats trouv‚s sont : ");
for(i=0;i<n;i++)
{
if(strcmp(condition1,p[i].prenom)==0)
{
printf("\n\nle nom : %s \nle prenom: %s \nlaville : %s \nle telephone : %d \nle code postale : %d \nla rue : %d \nle numero : %d ",p[i].nom,p[i].prenom,p[i].ville,p[i].telephone,p[i].cp,p[i].rue,p[i].numero);
trouv=1;
}
}
if(!trouv)
{
printf("ce prenom n'existe pas");
}
}
void ville()
{
printf("\n Donner la ville que vous voulez rechercher : ");
scanf("%s",&condition1);
trouv=0;
printf("les resultats trouv‚s sont : ");
for(i=0;i<n;i++)
{
if(strcmp(condition1,p[i].ville)==0)
{
printf("\n\nle nom : %s \nle prenom: %s \nlaville : %s \nle telephone : %d \nle code postale : %d \nla rue : %d \nle numero : %d ",p[i].nom,p[i].prenom,p[i].ville,p[i].telephone,p[i].cp,p[i].rue,p[i].numero);
trouv=1;
}
}
if(!trouv)
{
printf("cette ville n'existe pas");
}
}
void telephone()
{
printf("\n Donner le telephone que vous voulez rechercher : ");
scanf("%s",&condition2);
trouv=0;
printf("les resultats trouv‚s sont : ");
for(i=0;i<n;i++)
{
if(condition2==p[i].telephone)
{
printf("\n\nle nom : %s \nle prenom: %s \nlaville : %s \nle telephone : %d \nle code postale : %d \nla rue : %d \nle numero : %d ",p[i].nom,p[i].prenom,p[i].ville,p[i].telephone,p[i].cp,p[i].rue,p[i].numero);
trouv=1;
}
}
if(!trouv)
{
printf("ce telephone n'existe pas");
}
}
void codepostale()
{
printf("\n Donner le code postale que vous voulez rechercher : ");
scanf("%s",&condition2);
trouv=0;
printf("les resultats trouv‚s sont : ");
for(i=0;i<n;i++)
{
if(condition2==p[i].cp)
{
printf("\n\nle nom : %s \nle prenom: %s \nlaville : %s \nle telephone : %d \nle code postale : %d \nla rue : %d \nle numero : %d ",p[i].nom,p[i].prenom,p[i].ville,p[i].telephone,p[i].cp,p[i].rue,p[i].numero);
trouv=1;
}
}
if(!trouv)
{
printf("ce code postale n'existe pas");
}
}
void rue()
{
printf("\n Donner la rue que vous voulez rechercher : ");
scanf("%s",&condition2);
trouv=0;
printf("les resultats trouv‚s sont : ");
for(i=0;i<n;i++)
{
if(condition2==p[i].rue)
{
printf("\n\nle nom : %s \nle prenom: %s \nlaville : %s \nle telephone : %d \nle code postale : %d \nla rue : %d \nle numero : %d ",p[i].nom,p[i].prenom,p[i].ville,p[i].telephone,p[i].cp,p[i].rue,p[i].numero);
trouv=1;
}
}
if(!trouv)
{
printf("cette rue n'existe pas");
}
}
void numero()
{
printf("\n Donner le numero que vous voulez rechercher : ");
scanf("%s",&condition2);
trouv=0;
printf("les resultats trouv‚s sont : ");
for(i=0;i<n;i++)
{
if(condition2==p[i].numero)
{
printf("\n\nle nom : %s \nle prenom: %s \nlaville : %s \nle telephone : %d \nle code postale : %d \nla rue : %d \nle numero : %d ",p[i].nom,p[i].prenom,p[i].ville,p[i].telephone,p[i].cp,p[i].rue,p[i].numero);
trouv=1;
}
}
if(!trouv)
{
printf("ce numero n'existe pas");
}
}
void main()
{
clrscr();
printf("donner le nombre de personne : ");
scanf("%d",&n);
for(i=0;i<n;i++)
{
clrscr();
printf("entrer les informations de la %d personnne :",i+1);
printf("\ndonner le nom : ");
scanf("%s",&p[i].nom);
printf("\ndonner le prenom : ");
scanf("%s",&p[i].prenom);
printf("\ndonner la ville : ");
scanf("%s",&p[i].ville);
printf("\ndonner le telephone : ");
scanf("%d",&p[i].telephone);
printf("\ndonner le code postale : ");
scanf("%d",&p[i].cp);
printf("\ndonner la rue : ");
scanf("%d",&p[i].rue);
printf("\ndonner le numero : ");
scanf("%d",&p[i].numero);
}
clrscr();
printf("====== choisir le critŠre de recherche ======");
printf("\n1====> nom");
printf("\n2====> prenom");
printf("\n3====> ville");
printf("\n4====> telephone");
printf("\n5====> code postale");
printf("\n6====> rue");
printf("\n7====> numero");
scanf("\n %d",&choix);
switch (choix)
{
case 1 :
nom ();
break;
case 2 :
prenom();
break;
case 3 :
ville();
break;
case 4 :
telephone();
break;
case 5 :
codepostale();
break;
case 6 :
rue();
break;
case 7 :
numero();
default:
exit(0);
}
getch();
}

3 réponses

Pacorabanix Messages postés 3248 Date d'inscription   Statut Membre Dernière intervention   663
 
bonjour,
svp utilise les balises code (bouton à droite de sougliné) pour encadrer ton code.
Ainsi les espaces de départ seront préservés et peut-être que plus de personnes seront ainsi motivées à t'aider. Sinon c'est illisible pour un code de cette taille. Même si on fait un copié collé dans un compilateur, toutes ces lignes sans espacement c'est dur!
0
the doctor
 
yes je suis d accord avec vous essayez de faire un effort et copie le code comme il est merci.
0
reggaerai Messages postés 15 Date d'inscription   Statut Membre Dernière intervention  
 
non le problème est régler merci c'était une petite faute dans les fonction ("téléphone.rue.numéro") car condition2 et déclarer int et moi je l'entre avec %s lool alors merci pour votre aide.
0