Un tri par tas afficher en arbre

Fermé
amoulatii Messages postés 2 Date d'inscription vendredi 4 janvier 2013 Statut Membre Dernière intervention 21 février 2013 - 21 févr. 2013 à 20:28
Bonjour,

donc voiçi mn code en C et je le veux afficher sous une arbre des avec les printf { _ _ ___ _ _]et ça fonnctionne pas et ya du beugle aussi
svp aider moi
#include <stdio.h>
#include<conio.h>
#include<stdlib.h>

#include <ctype.h>
#include<windows.h>
//int main(void)
//{


//class tri{
//int a;

int taille,x,y;
int longeur,t1,t2;
int nmbre_du_tbleau;
int A[20];
//void gotoxy(int x,int y);
void ENTASSER(int A[],int i,int taille);
void CONSTRUIRE_TAS(int A[]);
void TRIER_TAS(int A[]);
// void dessiner(int A[]);

void dessiner(int A[]){//
// ici je fais mon tri
// void affichage(int A[]){
int x,y,i;
i=0;
while(i<=nmbre_du_tbleau) {
if (i==1) printf(" %d ___ \n",A[1]);

if (i==2) printf(" --------%d-------- ",A[2]);
if (i==3) printf("--------%d--------\n",A[3]);
if (i==4) printf(" %d",A[4]);
if (i==5) printf(" %d ",A[5]);
if (i==6) printf("%d",A[6]);
if (i==7) printf(" %d\n",A[7]);
if (i==8) printf(" %d ",A[8]);
if (i==9) printf("%d ",A[9]);
if (i==10) printf("%d ",A[10]);
if (i==11) printf("%d ",A[11]);
if (i==12) printf(" %d ",A[12]);
if (i==13) printf("%d ",A[13]);
if (i==14) printf(" %d ",A[14]);
if (i==15) printf("%d\n",A[15]);i++;
}y++;
//printf("\n");for(i=1;i<100;i++) printf("12(%d)",i);
}

//};
void ENTASSER(int A[],int i,int taille){
int a,g,d,pere,max,y;
// int A[20];
// int A[g];
//int A[max];

g=2*i;
d=2*i+1;
pere=i/2;
max=i;
if (g<=taille && A[g]>A[max]){
max=g;
}
if (d<=taille && A[d]>A[max]){
max=d;
}
if (max!=i){
a=A[i];
A[i]=A[max];
A[max]=a;

}
ENTASSER(A,max,taille );
printf("le tri par tas : %c\n\n");
// printf("etape : %d\n\n",y);dessiner(A); printf(" \n\n\n");y=y++;
}
void CONSTRUIRE_TAS(int A[]){
int taille,longeur,i;
taille=longeur;
for(i=(longeur/2);i>=1;i--){ ENTASSER(A,i,taille);
}
}
void TRIER_TAS(int A[]){
int longeur,i,a,taille;
CONSTRUIRE_TAS(A);

for(i=(longeur);i>=2;i--){
a=A[i];
A[i]=A[1];
A[0]=a;// j'ajoute a[0]=a
taille=taille-1;
ENTASSER(A,1,taille);

}
//printf(" caracter coller \n");
// getch();
}
/*void Dessiner(int A[]){
int i, taille;
int t1=taille;
int t2=taille;
}
int main(){*/
void tableau(int A[]){ int i;
//int nmbre_du_tbleau;

i=1;
while(i<=nmbre_du_tbleau)
{
printf("donner un entier : ");
scanf("%d",&A[i]);
i++;
}}

int main()
{
printf("donner le nombre du tableau: ");
int A[nmbre_du_tbleau];
// int i;

scanf("%d",&nmbre_du_tbleau);tableau(A);

//printf("entrer la valeur : ");
//scanf("%d",&taille);
TRIER_TAS(A);
//for (i=1;i<=taille;i++) {

printf("le tableau trier est : \n"); dessiner (A);//[nmbre_du_tbleau]);}
// printf("%s\n",t[i]);
getch();
return 0;

}