阅读下列算法,说明程序功能,并用图示输出执行后的结果 (8分)
#include <stdio.h> #include <malloc.h> #define n 7 typedef struct Node{ char data; struct Node *Lc,*Rc; }Node,*BiNode; void unknown (BiNode tint i,char *a) { t=Node*) malloc(sizeof(Node); t-> data=a[i]; if(2*i<s =n) unknown(t->Lc,2*i,a); elset->Lc NULL; if(2* i+1< =n) unknown(t->Rc,2*i+l, a); else t-> Rcs =NULL; } void main0 { chara[7]; a[l]='a'; a[2]='b'; a[3]='c'; a[4]=d'; a[5]='e'; a[6]='f; BiNode p; int j=l; unknown(pj,a);}