数据与结构实验三

#include<iostream>

using namespace std;

int main()

{

int a[1000],i,j=0;

cout<<"输入一个十进制的数:";

cin>>i;

while(i!=0)

{

a[j]=i%2;

i/=2;

j++;

}

for(i=j-1;i>=0;i--)

cout<<a[i];

cout<<endl;

return 0;

}

 

 

 

 

 

 

 

 

#include<iostream>

using namespace std;

#include "Bitree.h"

 

int main()

{BiTree T;

cout<<"--------前序遍历--------"<<endl;

T.PreOrder ();

cout<<endl;

cout<<"--------中序遍历--------"<<endl;

T.InOrder ();

 

cout<<"--------后序遍历--------"<<endl;

T.PostOrder ();

return 0;

}

 

#ifndef BiTree_H

#define BiTree_H//以下定义二叉链表的结点

 

struct BiNode

{

char data;

BiNode *lchild,*rchild;

};

 

class BiTree

{

public:

BiTree(){root=Creat(root);}

~BiTree(){Release(root);}

void PreOrder(){PreOrder(root);}//前序遍历函数调用

void InOrder(){InOrder(root);}//中序

void PostOrder(){PostOrder(root);}//后续

private:

BiNode *root;//指向根结点的头指针

BiNode *Creat(BiNode *bt);

void Release(BiNode *bt);

void PreOrder(BiNode *bt);

void InOrder(BiNode *bt);

void PostOrder(BiNode *bt);

};

#endif