注册 登录
编程论坛 数据结构与算法

求助,这个问题,究竟怎么回事?

发布于 2010-05-17 07:22, 414 次点击
代码:
#include <stdio.h>
#include <malloc.h>
#define maxsize 100

typedef char ElemType;
typedef struct node
{
    ElemType data;
    struct node *lchild,*rchild;
}BiNode,*BiTree;

BiTree CreatBiTree()
{
    BiTree T;
    ElemType x;
    scanf("%c",&x);
    if(x=='#') T=NULL;
    else
    {
        T=(BiTree)malloc(sizeof(BiNode));
        T->data=x;
        T->lchild=CreatBiTree();
        T->rchild=CreatBiTree();
    }
    return T;
}

int  Similarity(BiTree TA,BiTree TB)
{
    int x,y;
    if(TA&&TB)
    {
      x=Similarity(TA->lchild,TB->lchild);
      y=Similarity(TA->rchild,TB->rchild);
      if(x==1&&y==1) return 1;
      else return 0;
    }
    else if((TA==NULL&&TB!=NULL)||(TA!=NULL&&TB==NULL)) return 0;
      else return 1;

}

void main()
{
    BiTree Ta,Tb;
    int x;
    Ta=CreatBiTree();
    getchar();
    Tb=CreatBiTree();
    x=Similarity(Ta,Tb);
    if(x==1) printf("True");
    else printf("False");
}

在ubuntu下用codeblocks编的,显示一个错误:main must return 'int'
于是,我改成int main() return 0;
可执行时,出现了sh:Synax error: word unexpected (expecting ")")这样一句话,最今以经不只一次碰到
这个程序在windows下没出现问题...
0 回复
1