#include<stdio.h>#include<stdlib.h>typedef struct treeNode{struct treeNode *left,*right;int data;}treeNode;treeNode* createTree(){treeNode *node[10];int i = 0;for(i = 0 ; i<10;i++){node[i] = (treeNode*)malloc(sizeof(treeNode));node[i]->data = i;node[i]->left = NULL;node[i]->right = NULL;}i=0;while(2*i+1<10){node[i] ->left = node[2*i+1];if(2*i+2 < 10)node[i] ->right= node[2*i+2];i++;}return node[0];}void inOrderVisit(treeNode *root){if(root){if(root->left)inOrderVisit(root->left);printf("%d ", root->data);if(root->right)inOrderVisit(root->right);}}//中序遍曆void preOrderVisit(treeNode *root){if(root){printf("%d ", root->data);if(root->left)preOrderVisit(root->left);if(root->right)preOrderVisit(root->right);}}//先序遍曆void posOrderVisit(treeNode *root){if(root){if(root->left)posOrderVisit(root->left);if(root->right)posOrderVisit(root->right);printf("%d ", root->data);}}//後序遍曆void main(){treeNode *root;root = createTree();inOrderVisit(root);printf("\n");preOrderVisit(root);printf("\n");posOrderVisit(root);}