72 lines
1.1 KiB
C
72 lines
1.1 KiB
C
|
|
#include <stdlib.h>
|
|
#include <stdio.h>
|
|
#include <string.h>
|
|
|
|
#define N 5
|
|
#define NumLength (10+4+1)
|
|
#define IntLength (8)
|
|
|
|
typedef struct personne personne;
|
|
struct personne{
|
|
int age;
|
|
char* initiales;
|
|
char* num;
|
|
};
|
|
|
|
void description(personne* p){
|
|
|
|
printf("%s, agé de %d ans est joignable au %s \n",p->initiales, p->age, p->num);
|
|
|
|
}
|
|
|
|
void demander(personne* p){
|
|
|
|
int age;
|
|
char initiales[IntLength];
|
|
char num[NumLength];
|
|
|
|
printf("Création d'une nouvelle personne : \n");
|
|
printf("Initiales : ");
|
|
scanf("%s", initiales);
|
|
printf("Âge : ");
|
|
scanf("%d", &age);
|
|
printf("Numéro de téléphone : ");
|
|
scanf("%s", num);
|
|
|
|
p->initiales = initiales;
|
|
p->age = age;
|
|
p->num = num;
|
|
|
|
}
|
|
|
|
int lesmeme(personne* p1, personne* p2){
|
|
|
|
return (p1->age==p2->age) && (strcmp(p1->initiales, p2->initiales)==0) && (strcmp(p1->num, p2->num)==0);
|
|
|
|
}
|
|
|
|
|
|
int main(){
|
|
|
|
personne persos[N];
|
|
|
|
for(int i=0;i<N;i++){
|
|
demander(persos+i);
|
|
description(persos+i);
|
|
}
|
|
|
|
for(int i=1;i<N;i++){
|
|
for(int j=0;j<i;j++){
|
|
if(lesmeme(persos+i,persos+j)){
|
|
printf("Alerte doublon !\n");
|
|
description(persos+i);
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|