?? sub10_i.cpp
字號:
#include"glista.cpp"
int nratomi(GLista L);
void afis(GLista L);
int deep(GLista L);//NU MERGE
void main()
{
GLista L;
clrscr();
printf("\nIntroduceti lista :\n");
L=creareGLista();
printf("\nNr. de atomi : %d ",nratomi(L));
printf("\nLista citita : ");
afis(L);
printf("\nAdincimea: %d",deep(L));
getch();
}
int nratomi(GLista L)
{
GElement *p;
int nr=0;
p=L;
while(p!=0)
{
if(p->tag==ATOM)
nr++;
else
nr+=nratomi(p->data.L);
p=p->link;
}
return(nr);
}
int deep(GLista L)
{
GElement *p;
int ad=0,h=0,t=0;
p=L;
while(p!=0)
{
h=h++;
if(p->tag==LISTA)
if(p->data.L!=0)
{
t=deep(p->data.L);
if(h+t>ad)
ad=h+t;
}
p=p->link;
}
return(ad);
}
void afis(GLista L)
{
GElement *p;
p=L;
printf("(");
while(p!=0)
{
if(p->tag==ATOM)
{
printf("%c",p->data.A);
if(p->link!=NULL)
printf(",");
}
else
{
afis(p->data.L);
if(p->link!=NULL)
printf(",");
}
p=p->link;
}
printf(")");
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -