编辑代码

#include <iostream>
using namespace std;

struct biTree {
	// 数据域
	int val;
	// 指向左孩子的指针域
	biTree* left;
	// 指向右孩子的指针域
	biTree* right;
};

void insertNode(biTree** T, int data) {
	if (*T == NULL) {
		biTree* node = new biTree;
		node->val = data;
		node->left = NULL;
		node->right = NULL;
		*T = node;
	}
	else {
		if ((*T)->val > data) {
			insertNode(&(*T)->left, data);
		}
		else {
			insertNode(&(*T)->right, data);
		}
	}
};
void midTree(biTree* T) {
	if (T == NULL) {
		return;
	}
	else {
		midTree(T->left);
		cout << T->val << " ";
		midTree(T->right);
	}
}
	

int main(){
	biTree* T = NULL;
	int data;
	for (int i = 0; i < 10; i++) {
		cout << "请输入节点";
		cin >> data;
		insertNode(&T, data);
	}
	// 使用中序遍历打印
	cout << "使用中序遍历打印";
	midTree(T);

	return 0;
}