在程序中有一些小问题,具体如下:

  1. 第45行,应该是printf("结点个数为:%d\n",nodetree(T)),缺少了一个%d。

  2. 第47行,应该是printf("叶子结点个数为:%d\n",leaftree(T)),缺少了一个%d。

  3. 第49行,应该是printf("度为1的结点个数为:%d\n",onetree(T)),缺少了一个%d。

  4. 第53行,if(T==Null)应该改为if(T==NULL)。

  5. 第59行,if(T==NULL)return 0; 应该在后面加上else,否则只有左子树为空时才会执行右子树的递归。

  6. 第65行,if(T==NULL)return 0; 应该在后面加上else,否则只有左子树为空时才会执行右子树的递归。

  7. 第81行,应该是printf("结点个数为:%d\n",nodetree(T)),缺少了一个%d。

  8. 第83行,应该是printf("叶子结点个数为:%d\n",leaftree(T)),缺少了一个%d。

  9. 第85行,应该是printf("度为1的结点个数为:%d\n",onetree(T)),缺少了一个%d。

  10. 第107行,printf("结点个数为:\n",nodetree(T)),应该是printf("结点个数为:%d\n",nodetree(T))。

  11. 第109行,printf("叶子结点个数为:\n",leaftree(T)),应该是printf("叶子结点个数为:%d\n",leaftree(T))。

  12. 第111行,printf("度为1的结点个数为:\n",onetree(T)),应该是printf("度为1的结点个数为:%d\n",onetree(T))。

除此之外,程序运行正常,可以正常输出结果

#includestdioh#includestdlibh#define MAX 20typedef struct Btree		char data;	struct Btree leftright;	BtreeZbtree;创建二叉树void createbtreeZbtree &T		char e;	scanfc&e;	ife==# T=NULL;给左或右赋值0	else				T=Zbtre

原文地址: https://www.cveoy.top/t/topic/hkQq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录