void Level_order(Tree T, void (*visit)(Tree ThisNode))
{
Tree a[105];
int front, rear, i;
i = front = rear = 0;
a[rear] = T;
if (a[i] == NULL) return;
while (i <= rear)
{
if (a[i]->Left != NULL)
{
rear++;
a[rear] = a[i]->Left;
}
if (a[i]->Right != NULL)
{
rear++;
a[rear] = a[i]->Right;
}
i++;
}
for (i = 0; i <= rear; i++)
{
(*visit)(a[i]);
}
return;
}
{
Tree a[105];
int front, rear, i;
i = front = rear = 0;
a[rear] = T;
if (a[i] == NULL) return;
while (i <= rear)
{
if (a[i]->Left != NULL)
{
rear++;
a[rear] = a[i]->Left;
}
if (a[i]->Right != NULL)
{
rear++;
a[rear] = a[i]->Right;
}
i++;
}
for (i = 0; i <= rear; i++)
{
(*visit)(a[i]);
}
return;
}