Language: C

#include<stdio.h>
 
const int A=25;
const int B=-1;
struct node{
    int p,right,left,depth,height,sibling;
};
node Tree[A];
 
int iroiro(int p,int deep){
    if(Tree[p].left==B&&Tree[p].right==B){
        Tree[p].depth=deep;
        Tree[p].height=0;
        return 1;
    }else{
        int h1=-1,h2=-1,h3;
        if(Tree[p].left!=B){
	  h1=iroiroTree[p].left,deep+1);
    }
    if(Tree[p].right!=B){
	  h2=iroiro(Tree[p].right,deep+1);
    }
        h3=h1>h2?h1:h2;
        Tree[p].height=h3;
        Tree[p].depth=deep;
        return h3+1;
    }
} 
  
void dasu(int n){
    for(int i=0;i<n;i++){
        printf("node %d: parent = %d, sibling = %d, ",i,Tree[i].p,Tree[i].sibling);
        int degree=(Tree[i].left!=-1)+(Tree[i].right!=-1);
        printf("degree = %d, depth = %d, height = %d, ",degree,Tree[i].depth,Tree[i].height);
        if(Tree[i].p==-1){
            printf("root\n");
        }else if(degree==0){
            printf("leaf\n");
        }else{
            printf("internal node\n");
        }
    }
}
 
int main(){
    int n,l=n1,r=n2,no=n3;
    scanf("%d",&n);
    for(int i=0;i<n;i++)Tree[i].p=Tree[i].sibling=B;
    for(int i=0;i<n;i++){
        scanf("%d %d %d",&n3,&n1,&n2);
        Tree[n3].left=n1;
        Tree[n3].right=n2;
        Tree[n1].p=Tree[n2].p=n3;
        Tree[n1].sibling=n2;
        Tree[n2].sibling=n1;
    }
    int p=0;
    for(int i=0;i<n;i++)if(Tree[i].p==B)p=i;
    int x=iroiro(p,0);
    dasu(n);
}

Compiler output:
main.c:8:1: error: unknown type name 'node'; use 'struct' keyword to refer to the type
    8 | node Tree[A];
      | ^~~~
      | struct 
main.c:8:6: error: variably modified 'Tree' at file scope
    8 | node Tree[A];
      |      ^~~~
main.c: In function 'iroiro':
main.c:11:15: error: request for member 'left' in something not a structure or union
   11 |     if(Tree[p].left==B&&Tree[p].right==B){
      |               ^
main.c:11:32: error: request for member 'right' in something not a structure or union
   11 |     if(Tree[p].left==B&&Tree[p].right==B){
      |                                ^
main.c:12:16: error: request for member 'depth' in something not a structure or union
   12 |         Tree[p].depth=deep;
      |                ^
main.c:13:16: error: request for member 'height' in something not a structure or union
   13 |         Tree[p].height=0;
      |                ^
main.c:17:19: error: request for member 'left' in something not a structure or union
   17 |         if(Tree[p].left!=B){
      |                   ^
main.c:18:14: error: 'iroiroTree' undeclared (first use in this function); did you mean 'iroiro'?
   18 |           h1=iroiroTree[p].left,deep+1);
      |              ^~~~~~~~~~
      |              iroiro
main.c:18:14: note: each undeclared identifier is reported only once for each function it appears in
main.c:18:39: error: expected ';' before ')' token
   18 |           h1=iroiroTree[p].left,deep+1);
      |                                       ^
      |                                       ;
main.c:18:39: error: expected statement before ')' token
main.c:20:15: error: request for member 'right' in something not a structure or union
   20 |     if(Tree[p].right!=B){
      |               ^
main.c:21:28: error: request for member 'right' in something not a structure or union
   21 |           h2=iroiro(Tree[p].right,deep+1);
      |                            ^
main.c:24:16: error: request for member 'height' in something not a structure or union
   24 |         Tree[p].height=h3;
      |                ^
main.c:25:16: error: request for member 'depth' in something not a structure or union
   25 |         Tree[p].depth=deep;
      |                ^
main.c: In function 'dasu':
main.c:32:64: error: request for member 'p' in something not a structure or union
   32 |         printf("node %d: parent = %d, sibling = %d, ",i,Tree[i].p,Tree[i].sibling);
      |                                                                ^
main.c:32:74: error: request for member 'sibling' in something not a structure or union
   32 |         printf("node %d: parent = %d, sibling = %d, ",i,Tree[i].p,Tree[i].sibling);
      |                                                                          ^
main.c:33:28: error: request for member 'left' in something not a structure or union
   33 |         int degree=(Tree[i].left!=-1)+(Tree[i].right!=-1);
      |                            ^
main.c:33:47: error: request for member 'right' in something not a structure or union
   33 |         int degree=(Tree[i].left!=-1)+(Tree[i].right!=-1);
      |                                               ^
main.c:34:71: error: request for member 'depth' in something not a structure or union
   34 |         printf("degree = %d, depth = %d, height = %d, ",degree,Tree[i].depth,Tree[i].height);
      |                                                                       ^
main.c:34:85: error: request for member 'height' in something not a structure or union
   34 |         printf("degree = %d, depth = %d, height = %d, ",degree,Tree[i].depth,Tree[i].height);
      |                                                                                     ^
main.c:35:19: error: request for member 'p' in something not a structure or union
   35 |         if(Tree[i].p==-1){
      |                   ^
main.c: In function 'main':
main.c:46:13: error: 'n1' undeclared (first use in this function); did you mean 'n'?
   46 |     int n,l=n1,r=n2,no=n3;
      |             ^~
      |             n
main.c:46:18: error: 'n2' undeclared (first use in this function); did you mean 'n'?
   46 |     int n,l=n1,r=n2,no=n3;
      |                  ^~
      |                  n
main.c:46:24: error: 'n3' undeclared (first use in this function); did you mean 'no'?
   46 |     int n,l=n1,r=n2,no=n3;
      |                        ^~
      |                        no
main.c:48:32: error: request for member 'p' in something not a structure or union
   48 |     for(int i=0;i<n;i++)Tree[i].p=Tree[i].sibling=B;
      |                                ^
main.c:48:42: error: request for member 'sibling' in something not a structure or union
   48 |     for(int i=0;i<n;i++)Tree[i].p=Tree[i].sibling=B;
      |                                          ^
main.c:58:35: error: request for member 'p' in something not a structure or union
   58 |     for(int i=0;i<n;i++)if(Tree[i].p==B)p=i;
      |                                   ^