Début de l'interface pour C12
This commit is contained in:
parent
e95eb2d275
commit
d1f50dc10e
65
C12.2.c
65
C12.2.c
@ -3,6 +3,7 @@
|
|||||||
#include<stdlib.h>
|
#include<stdlib.h>
|
||||||
|
|
||||||
#define NameLength 16
|
#define NameLength 16
|
||||||
|
#define NameLengthScanf "%16s"
|
||||||
|
|
||||||
/* 1 */
|
/* 1 */
|
||||||
|
|
||||||
@ -483,7 +484,7 @@ void freeListe(struct personnage* origin){
|
|||||||
|
|
||||||
///// Main pour les tests
|
///// Main pour les tests
|
||||||
|
|
||||||
int main(){
|
int mainTests(){
|
||||||
|
|
||||||
struct personnage* liste = NULL;
|
struct personnage* liste = NULL;
|
||||||
|
|
||||||
@ -521,4 +522,66 @@ int main(){
|
|||||||
|
|
||||||
|
|
||||||
freeListe(liste);
|
freeListe(liste);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int main(){
|
||||||
|
|
||||||
|
struct personnage* liste = NULL;
|
||||||
|
char c;
|
||||||
|
char p1[NameLength+1], p2[NameLength+1];
|
||||||
|
char* newName;
|
||||||
|
int p3;
|
||||||
|
// Bon, j'ai mal lu le sujet, j'ai fait des matrices rectangulaires ...
|
||||||
|
|
||||||
|
printf("Bienvenue sur l'interface pour regarder votre série préférée.\n");
|
||||||
|
printf("'n $nom' pour ajouter un personnage;\n");
|
||||||
|
printf("'p $père' déclare un nouvel enfant à son père;\n");
|
||||||
|
printf("'m $mère' déclare un nouvel enfant à sa mère;\n");
|
||||||
|
printf("'c' afficher l'état actuel;\n");
|
||||||
|
printf("'e' demande d'une entrée de registre;\n");
|
||||||
|
printf("'P $enfant' suppression d'un lien père-enfant;\n");
|
||||||
|
printf("'M $enfant' suppression d'un lien mère-enfant;\n");
|
||||||
|
printf("'o' trier la liste par ordre alphabétique;\n");
|
||||||
|
printf("'v $nom' affiche le nom COMPLET d'un personnage;\n");
|
||||||
|
printf("'a $nom' affiche les ancètres de génération donnée d'un personnage;\n");
|
||||||
|
printf("'A $nom' affiche tous les ancètres d'un personnage;\n");
|
||||||
|
printf("'d $nom' affiche les déscendants d'une génération donnée d'un personnage\n");
|
||||||
|
printf("'D $nom' affiche les déscendants jusqu'à une génération donnée d'un personnage;\n");
|
||||||
|
printf("'x' vérifie la cohérence du graphe généalogique.;\n");
|
||||||
|
printf("'q' pour quitter\n");
|
||||||
|
|
||||||
|
while(1){
|
||||||
|
printf("Commande ? ");
|
||||||
|
c = getchar();
|
||||||
|
getchar();// On bouffe l'espace
|
||||||
|
|
||||||
|
switch(c){
|
||||||
|
case 'n':
|
||||||
|
scanf(NameLengthScanf, p1);
|
||||||
|
p1[NameLength] = '\0';
|
||||||
|
newName = malloc((strlen(p1)+1)*sizeof(char));
|
||||||
|
if(newName==NULL)
|
||||||
|
goto mallocErr;
|
||||||
|
|
||||||
|
strcpy(newName, p1);
|
||||||
|
newUnrelatedM(&liste, newName, 1);
|
||||||
|
|
||||||
|
printf("Le personnage %s a été créé.\n", newName);
|
||||||
|
|
||||||
|
break;
|
||||||
|
case 'q':
|
||||||
|
goto fend;
|
||||||
|
|
||||||
|
}
|
||||||
|
getchar();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
fend: freeListe(liste);
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
mallocErr: freeListe(liste);
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user