三九宝宝网宝宝教育教学论文

有谁能够告诉我c语言的实验报告怎么写

01月06日 编辑 39baobao.com

[msdn我告诉你 win8] msdn里没有RTM版win8.1,只有win8的,上面的那个网址请自行输入后下载 如果确定win+r输入slmgr -xpr显示的是coresinglelanguage,那你就是单语言版,否则就是corecountryspecific...+阅读

实验题目:

编程实现:二叉树采用二叉链表存储,要求建立一棵二叉树,并输出要求的树状形式与结点编号。

结点结构为:

lchied Data num rchied

其中二叉树的num编号域为整数类型,data数据域为字符类型,

要求生成二叉树中编号,从1开始进行连续编号,每个结点的编号大于其左右子树中孩子的编号,同一个结点的左右孩子中,其左孩子的编号小于其右孩子的编号,

请给出对二叉树中结点的实现如上要求编号并按如下树状形式打印出相应点编号的程序。

测试数据:输入 AB∪D∪∪CE∪F∪∪∪ (其中符号“∪”表示空格(space)字符)

实验分析:

本题的考察点:二叉树遍历应用。本题主要涉及到对二叉树的创建,二叉树的打印,以及在遍历的时候顺便给每个节点编号,这样打印的时候顺便就把节点的序号也打印出来了。下面分别给出三个算法。

二叉树的创建算法:

二叉树的打印算法:

给结点的编号算法:

另外在这里也阐明一下二叉树的结构:

结合上面的四个算法,这个问题自然也就迎刃而解了,这样也就能得到这个问题的完整程序。

完整程序如下:

#include

#include

typedef struct BiTNode

{

int num;

char data;

struct BiTNode *LChild,*RChild;

}BiTNode,*BiTree;

void CreateBiTree(BiTree *BT)

{

char ch;

ch=getchar();

if (ch==' ') (*BT)=NULL; /* #代表空指针*/

else

{

(*BT)=(BiTree) malloc(sizeof(BiTNode));/*申请结点 */

(*BT)->data=ch; /*生成根结点 */

CreateBiTree(&((*BT)->LChild)); /*构造左子树 */

CreateBiTree(&((*BT)->RChild)); /*构造右子树 */

}

}

void print(BiTree root,int nlayer)

{

int i;

if(root==NULL)return;

print(root->RChild,nlayer+4);

for(i=0;i

printf(" ");

printf("%c%d\n",root->data,root->num);

print(root->LChild,nlayer+4);

}

void num(BiTree bt)

{

static int i=1; //定义静态全局变量

if(bt!=NULL)

{

num(bt->LChild);

num(bt->RChild);

bt->num=i;

i++;

}

}

int main()

{

BiTree bt;

printf("请输入相关字符以创建一个二叉树:\n");

CreateBiTree(&bt);

num(bt);

print(bt,1);

return 0;

}

程序的测试结果:

实验总结:

在解决具体的实验问题时,我们要分析问题,将一个大的问题细分为一个个小的问题,再去分析解决一个个小的问题,这样就能很好的解决问题了。在平时的实验过程中,要注重培养自己的分析问题及解决问题的能力。

大致一个流程和格式是这样的,具体的可以自己添加。。。。

以下为关联文档:

大家告诉我一下舞蹈课课教案要怎么写哟舞蹈课还写教案?! 教案一般包括 课题(说明本课名称) 教学目的(或称教学要求,或称 教学目标 ,说明本课所要完成的教学任务) 课型(说明属新授课,还是复习课) 课时(说明属第几课时) 教学重点...

谁知道两片树叶的故事呀告诉我谢谢两片树叶的故事 森林很大,密密地长了树,有各种各样的叶子。时间是十一月。往往这时候天已经冷了,也许还下了雪,可是,今年十一月天气还比较暖和。夜晚天凉,刮起风,但是早晨太阳一出,...

我要写一篇酒店员工职业素质养成的毕业论文有的告诉我具体点道德与职业道德 道德 在社会生活中,为了调节人们的关系,约束人们的行为,保证社会的安定与秩序,除法制外,还需要一种规则与规范,这些规范就是道德。 克己复礼为仁。一日克己复礼,天...

幼儿园我把消息告诉你详案幼儿园中班社会教案:请你告诉我 活动目标 1、知道有事情可以向朋友倾诉,保持愉快心情。 2、了解倾诉是一种让别人了解自己使人快乐的方法。 活动准备 课件-照片:不合群的孩子...

谁能告诉我C语言头文件math h中所有的函数及使用方法。。1、 三角函数double sin(double);正弦double cos(double);余弦double tan(double);正切2 、反三角函数double asin (double); 结果介于[-PI/2,PI/2]double acos (double); 结果介...

学雷锋树新风主题班会主持稿跪求撒希望大家告诉我被学雷锋,树新风 3月5日是***“向雷锋同志学习” 题词发表46周年。3月,又是我们学习雷锋的传统文明月。几十年过去了,在雷锋精神的照耀下,一代代青少年实践着自己的人生价值。今天...

怎样培养小班幼儿能够认真倾听别人讲话一、 利用有趣的童话故事,让幼儿“喜欢听”好听的故事、童话、儿歌,往往能很快吸引幼儿倾听。这时,教师要根据小班幼儿的年龄特点选择故事,故事要生动、有趣、简短,有重复的情节,...

禁烟广告让你产生什么样的心理感受告诉你哪些信息?曾播过一条警告吸烟危害生命的公益广告。电视画面中,在醒目的位置上显出“吸烟”两个大字,背景上是吸烟危及健康的组合画面,“烟”字半边的“火”将一支香烟点燃后熊熊地燃烧着...

交通运输管理处具体都管些什么知道的告诉我下吧越详细越好!交通运输管理处受市交通局和上级业务主管部门的领导,负责国家及省市有关道路运输、城市公共汽车客运管理的方针、政策、法规、规范、标准、制度的贯彻实施;负责具体组织实施全...

推荐阅读
图文推荐