sjdjd活宝
sjdjd活宝
关注数: 11
粉丝数: 101
发帖数: 416
关注贴吧数: 8
有需要手机壳的吗,免费送 需要的可以私聊我
【问题咨询◎1208】有用opporeno11的吗,可以免费体验手机壳
更新完怎么这样了
请教一个问题,这问题困扰我好几天了。 先上代码: #include<stdio.h> #include<stdlib.h> #define OK 1 #define ERROR 0 #define OVERFLOW -1typedef char TElemType; typedef int Status;typedef struct BiTNode { TElemType data; struct BiTNode *lChild, *rChild; }BiTNode, *BiTree;void printMenu(); Status createBiTree(BiTree &T);int main() { BiTree T; int runFlag = 1; int num; while (runFlag) { do { printMenu(); scanf_s("%d", &num); if (num < 0 || num>1) printf("菜单号输入错误,请重新输入。\n"); } while (num < 0 || num>1); switch (num) { case 0: { runFlag = 0; printf("程序已退出。\n"); break; } case 1: { printf("请输入二叉树结点值:"); if (createBiTree(T)) printf("创建二叉树成功。\n"); else printf("创建二叉树失败。\n"); break; } } } //printf("请输入二叉树结点值:"); //if (createBiTree(T)) // printf("创建二叉树成功。\n"); //else // printf("创建二叉树失败。\n"); return 0; }void printMenu() { printf("---------二叉树的基本操作---------\n"); printf("---------1-创建二叉树-------------\n"); printf("---------0-退出程序---------------\n"); printf("---------请选择菜单号(0-1):-------\n"); }Status createBiTree(BiTree &T) { char ch = getchar(); if (ch == ' ') T = NULL; else { if (!(T = (BiTNode*)malloc(sizeof(BiTNode)))) exit(OVERFLOW); T->data = ch; createBiTree(T->lChild); createBiTree(T->rChild); } return OK; } 先序输入二叉树结点值的时候,比如输入:ABD空格空格E空格空格C空格F空格空格 运行注释掉的代码这样输入结点值就创建二叉树成功了,但在运行case语句中代码时要在最后多输入一个空格才提示创建二叉树成功,为什么会出现这种差异呢?望路过的帅哥美女能够指点一下。
二叉树的基本操作问题 严蔚敏版的数据结构中这样声明value()函数: Status Value(BiTree T,BiTNode e); 初始条件:二叉树T存在,e是T中某个结点 操作结果:返回e的值 因为e是T中某个结点了,所以直接如下设计这个函数就好了。 Status Value(BiTree T,BiTNode e) { return e.data; } 关键是有个形参T没有用到,因此我这样设计这个函数,感觉更符合作者的原。 Status searchBiTNode(BiTree T, BiTNode e) { if (T) { if (T->data == e.data) return OK; else { searchBiTNode(T->lChild, e); searchBiTNode(T->rChild, e); } } return FALSE; }Status value(BiTree T, BiTNode e) { if (searchBiTNode(T, e)) return e.data; return FALSE; } 路过的帅哥美女怎么设计呢?
请教有关结构体的问题? 最近在看严蔚敏版的数据结构,里面有些内容看不懂。比如定义一个二叉树的结点结构: typedef struct BiTNode { TElemType data; struct BiTNode *lChild, *rChild; //左右孩子指针 }BiTNode, *BiTree; 然后其定义的函数 Status InitBiTee(BiTree &T) BiTree &T等于struct BiTNode *&T等于struct BiTNode T,此时T不是指针变量,而在InitBiTree()函数中又有T=NULL, 这里甚是不解,按我的理解T为指针类型才有意义吧,将结构体变量赋值为NULL是什么意思呢? 望路过的帅哥美女能够帮我解惑。
笔记本电脑装了remix os后在windows下fn键不能用,触摸板也不能
一样的代码,用Eclipse和记事本输出的结果竟然不一样。
我发表了一篇图片贴,大伙来看看吧~
判断矩阵B的秩从行最简形矩阵中看不出来吗?为什么要用这种方法判断。
求助 划红线的地方怎么算的
有人玩过暗黑血统2吗,我在里面发现了仇人久的兄弟 看 像不像
小弟有一事不解,如下
内存条和固态加在56bd上行否
在烙铁苍穹那里迷路了,求助。怎样去对面
是hong ji呢还是hong qi呢
求助 调试c语言时命令提示符闪退
咋跳过去啊
1
下一页