2 树的操作
2.1实验数据
学生的学号、姓名
2.2程序要求
根据输入数据建立一棵二叉树(第一个输入数据作为根节点),要求:左子树节点的学号总比根节点小,右子树节点的学号总比根节点大。
(1)键盘输入你所在宿舍的同学信息到二叉树;
(2)按学号大小输出所有同学信息;
(3)给定学号,查找该学号同学的姓名;
2.3程序清单及详解
//树的操作
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
struct Tree
{
int no;
char name[20];
struct Tree *left;
struct Tree *right;
};
typedef struct Tree TreeNode;
typedef TreeNode *Bitree;//
Bitree insertNode(Bitree root,int no,char *name)
{
Bitree newnode;//指针变量
Bitree current;
Bitree back;
newnode=(Bitree)malloc(sizeof(TreeNode));
{
printf("\n动态分配内存出错.\n");
exit(1);
}
newnode->no=no;
strcpy(newnode->name,name);
ne