Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- int A=7;
- typedef struct caractere
- {
- char car;
- struct caractere * suivcar;
- }caractere ;
- typedef caractere * ptrcar;
- typedef struct ligne
- {
- caractere * lig;
- struct ligne * suivlig;
- }ligne ;
- typedef ligne * ptrlig;
- ptrlig texte;
- caractere * CreationCaractere()
- {
- caractere * Dc;
- char c ;
- Dc=(caractere*)malloc(sizeof(caractere));
- c = getch(stdin);
- printf("%c",c);
- Dc->car = c;
- Dc->suivcar=NULL;
- A = 5;
- if(Dc->car=='*')
- A=1;
- return Dc;
- }
- InsererCaractere(caractere * Dc1)
- {
- caractere * rechcarac;
- char c;
- rechcarac = Dc1;
- while(rechcarac->suivcar != NULL)
- {
- rechcarac = rechcarac->suivcar;
- }
- c = 'a';
- while(c != '.' && c!= '*')
- {
- fflush(stdin);
- c = getch(stdin);
- printf("%c",c);
- rechcarac->suivcar=malloc(sizeof(caractere));
- rechcarac->suivcar->car = c;
- rechcarac=rechcarac->suivcar;
- }
- rechcarac->suivcar=NULL;
- A = 5;
- if(rechcarac->car=='*')
- A=1;
- }
- ligne * CreationLigne()
- {
- ligne * Dl;
- Dl=(ligne*)malloc(sizeof(ligne));
- Dl->lig = CreationCaractere();
- Dl->suivlig = NULL;
- if(A != 1)
- InsererCaractere(Dl->lig);
- return Dl;
- }
- ptrlig InsererLigne(ptrlig Dl1)
- {
- ptrlig rechlig;
- //for(rechlig=Dl1;rechlig->suivlig!=NULL;rechlig=rechlig->suivlig);
- rechlig = Dl1;
- while(rechlig->suivlig != NULL)
- {
- rechlig = rechlig->suivlig;
- }
- rechlig->suivlig=(ptrlig)malloc(sizeof(ligne));
- rechlig=rechlig->suivlig;
- rechlig->suivlig=NULL;
- rechlig->lig=CreationCaractere();
- if(A!=1)
- InsererCaractere(rechlig->lig);
- return Dl1;
- }
- ptrlig Remplirtexte()
- {
- ptrlig Dt;
- Dt=CreationLigne();
- while(A!=1)
- {
- Dt = InsererLigne(Dt);
- // ptrlig //InsererLigne(Dt);
- }
- return Dt;
- }
- ptrlig CreationTexte()
- {
- ptrlig texte;
- texte=Remplirtexte();
- return texte;
- }
- InsererPremierLigne(ptrcar Dt1)
- {
- ptrlig Dt2;
- Dt2=malloc(sizeof(ligne));
- Dt2->suivlig=Dt1;
- Dt1=Dt2;
- Dt1=CreationLigne();
- InsererLigne(Dt1);
- }
- /*AjouterLigne(ptrlig T)
- {
- int n,i;
- char Rep[2];
- char Etat[2];
- ptrlig Dl3,TempDl;
- printf("Entrez le numero de la ligne");
- scanf("%d",&n);
- printf("Si vous designé ajouter apres cette ligne entrez Ap sinon Av");
- scanf("%s",&Etat);
- if(Etat=='A')
- {
- i=1; Dl3=T;
- while(i<n && Dl3!=NULL)
- {
- Dl3=Dl3->suivlig;
- i++;
- }
- ptrcar
- TempDl=Dl3;
- Dl3->suivlig=malloc(sizeof(ligne)); Dl3=Dl3->suivlig; Dl3->suivlig=TempDl->suivlig;
- Dl3->lig=CreationCaractere();
- InsererCaractere(Dl3->lig);
- }
- else if(Etat=='B')
- {
- if(n==1)
- InsererPremierLigne(Dl3);
- else if(n>1)
- {
- n=n-1;
- i=1; Dl3=T;
- while(i<n && Dl3!=NULL)
- {
- Dl3=Dl3->suivlig;
- i++;
- }
- TempDl=Dl3;
- Dl3->suivlig=malloc(sizeof(ligne));
- Dl3=Dl3->suivlig;
- Dl3->suivlig=TempDl->suivlig;
- Dl3->lig=CreationCaractere();
- InsererCaractere(Dl3->lig);
- }
- }
- }
- */
- AfficherLigneDonne(ptrlig l1)
- {
- int n2,i;
- ptrlig Dl4;
- printf("Entrez le nombre designe");
- scanf("%d",&n2);
- i=1; Dl4=l1;
- while(i<=n2 && Dl4!=NULL)
- {
- i++;Dl4=Dl4->suivlig;
- }
- AfficherLigne(Dl4->lig);
- }
- initialiser()
- {
- ptrlig t1;
- t1 = (ptrlig) malloc(sizeof(ligne));
- t1->lig = NULL;
- t1->suivlig=NULL;
- return t1;
- }
- AfficherLigne(ptrcar l)
- {
- ptrcar Dc2;
- for(Dc2=l;Dc2->suivcar!=NULL;Dc2=Dc2->suivcar)
- {
- printf("%c",Dc2->car);
- }
- }
- AfficherTexte(ptrlig t)
- {
- ptrlig Dl4;
- Dl4 = t;
- while(Dl4 != NULL)
- {
- ptrcar c = Dl4->lig;
- while(c != NULL)
- {
- printf("%c",c->car);
- c = c->suivcar;
- }
- Dl4 = Dl4->suivlig;
- }
- }
- int main()
- {
- ptrlig test;
- int z;
- // printf("Bienvenue entrez votre texte");
- // printf("entrez 1 pour cree et 2 pour afficher");
- // scanf("%d",&z);
- test = initialiser();
- // if(z==1)
- test=CreationTexte();
- printf("\n");
- AfficherTexte(test);
- /* else if(z==2)
- AfficherTexte(&test);*/
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement