华图教育-第一公务员考试网

027-87870401(武昌)
027-85447051(汉口)
湖北分校

  63.(5分)设M叉树采用列表法表示,即每棵子书对应一个列表,列表的结构为:子树根节点的值后跟用“()”括起来的各子树的列表(若有子树的话),各子树的列表间用“,”分隔、以三叉树a(b(c,d),e,f(g,h,i))的列表为例。下列程序根据输入的列表产生一棵M叉树,并由M叉树再输出列表。请填空:

  #include<stdio.h>

  #include<stdlib.h>

  #define M  3

  Typedef struct node

  {int val;

  struct node * subTree[     ①     ];

  {NODE;

  Char buff[255],*str=buff;

  NODE*d=NULL;

  NODE * maketree( )

  {int k;NODE*s;

  S =(    ②     )malloc(sizeof(      ③     ));

  S->val=*str++;

  For(k=0;k<M;k++)s->subTree[k]=NULL;

  If(*str=='(')

  {k=0;

  do{str++;

  S-.subTree[k]=   ④    ;

  if(*str==')')

  {str++;break;}

  K=K+1;

  {while(*str);

  {

  return s;

  {

  Void walkTree(NODE*t)

  {int i;

  If(t!=NULL)

  {putchar(t-.val);

  if(t->subTree[0]==NULL)return;

  putchar('(');

  for (i=0;o<M;i++)

  {walkTree(t ->    ⑤     );

  If(i!=M-1&& t->subTree[i+1}!=NULL) putchar(‘,’);

  }

  Putchar(')');

  }

  }

  Void main(   )

  {printf("输入表达式:");scanf("%s",str);

  d=makeTree(  );walktree(d);putchar('\n');

  }

  更多内容请继续关注 湖北人事考试网 公务员考试 公务员考试网 公务员考试培训课程

(责任编辑:湖北华图)

经典图书

  • 湖北省考教材
  • 华图教你赢系列
  • 国考新大纲系列
  • 名师模块教材
  • 面试教材系列
  • 热门分站
  • 热门地市
  • 热门考试
  • 热门信息
  • 热门推荐
  • 申论
  • 行测
  • 面试
  • 历年真题
  • 模拟试题
  • 时事热点

问知