#include #include #include #include typedef struct noeud{ int valeur; struct noeud *lettre[26]; } noeud ; void creer_et_initialiser_le_noeud(noeud ** parbre, int v){ *parbre=malloc(sizeof(noeud)); (*parbre)->valeur=v; int i; for(i=0;i<26;i++) (*parbre)->lettre[i]=NULL; } void remplissage(noeud ** parbre, char ch[128]){ int i; int n=strlen(ch); if(&(*parbre)->valeur==NULL) creer_et_initialiser_le_noeud(parbre,ch[0]); for(i=1;ilettre[ch[i]-'a']; if(&(*parbre)->valeur==NULL) creer_et_initialiser_le_noeud(parbre,ch[i]); } } void lecture(noeud ** parbre, FILE *fichier){ char ch[128]; int i; noeud ** tmp_parbre=parbre; while(fscanf(fichier,"%s",ch)==1) remplissage(tmp_parbre,ch); } int main (){ noeud *Arbre = NULL; FILE *dico=fopen("dico.txt","r"); lecture(&Arbre,dico); fclose(dico); FILE *texte=fopen("texte.txt","r"); fclose(texte); printf("la lettre est :%c\n",Arbre->valeur); printf("la lettre est :%c\n",Arbre->lettre[17]->valeur); printf("la lettre est :%c\n",Arbre->lettre[17]->lettre[1]->valeur); // afficher arbre printf("la lettre est :%c\n",Arbre->lettre[17]->lettre[1]->lettre[17]->valeur); printf("la lettre est :%c\n",Arbre->lettre[17]->lettre[1]->lettre[17]->lettre[4]->valeur); printf("\n"); printf("la lettre est :%c\n",Arbre->valeur); printf("la lettre est :%c\n",Arbre->lettre[25]->valeur); printf("la lettre est :%c\n",Arbre->lettre[25]->lettre[4]->valeur); // afficher azerty printf("la lettre est :%c\n",Arbre->lettre[25]->lettre[4]->lettre[17]->valeur); printf("la lettre est :%c\n",Arbre->lettre[25]->lettre[4]->lettre[17]->lettre[19]->valeur); printf("la lettre est :%c\n",Arbre->lettre[25]->lettre[4]->lettre[17]->lettre[19]->lettre[24]->valeur); printf("\n"); printf("la lettre est :%c\n",Arbre->valeur); printf("la lettre est :%c\n",Arbre->lettre[13]->valeur); printf("la lettre est :%c\n",Arbre->lettre[13]->lettre[0]->valeur); // afficher azerty printf("la lettre est :%c\n",Arbre->lettre[13]->lettre[0]->lettre[13]->valeur); printf("la lettre est :%c\n",Arbre->lettre[13]->lettre[0]->lettre[13]->lettre[0]->valeur); printf("la lettre est :%c\n",Arbre->lettre[13]->lettre[0]->lettre[13]->lettre[0]->lettre[18]->valeur); FILE *corrige = fopen("fautes.txt","w"); fclose(corrige); return 0; }