下面这是严蔚敏《数据结构C语言版》习题集6.36的答案,这是类C,还是纯C语言,还是C++?

6.36 解:
Status SimilarTree(BiTree& T1,BiTree& T2)
{
if(!T1){// T1 是空树
if(!T2) return TRUE;// T2 是空树
else return FALSE;
}
else{// T1 是非空树
if(!T2) return FALSE;
else{// T2 是非空树
if(SimilarTree(T1->lchild,T2->lchild)
&& SimilarTree(T1->rchild,T2->rchild))
return TRUE;
else return FALSE;
}
}
}

第1个回答  2013-08-27
基本上就是C语言,返回值它直接写了一个Status,程序里的返回值是TRUE和FALSE,如果把STATUS改成BOOL就是标准的C语言了。C语言是C++的一个子集,这个程序也可以认为是C++写的。
第2个回答  2013-08-27
Status SimilarTree(BiTree& T1,BiTree& T2)这里用了引用,就不是纯C了。这本书里面的程序主要是添加了部分C++思想的C语言。
第3个回答  2013-08-27
Status SimilarTree(BiTree& T1,BiTree& T2)

C中是不能这么写的,

Status SimilarTree(BiTree * T1,BiTree * T2)

这才是C的写法。

不用太计较这些,数据结构更重要的是其思想,你也可以用伪代码写啊(考试要求要用C|C++)!

本回答被网友采纳
第4个回答  2013-08-27
看书前言部分有说明:本书采用类C语言,注重思想。其实就是伪代码。