⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_56953.htm

📁 vc
💻 HTM
字号:
<p>
序号:56953 发表者:fox_xu 发表日期:2003-10-21 22:47:23
<br>主题:二叉树问题,请大家帮帮忙![求助]
<br>内容:#include &lt;stdio.h&gt;<BR>#include &lt;iostream.h&gt;<BR>struct node<BR>{<BR> char data;<BR> struct node *lc;<BR> struct node *rc;<BR>};<BR><BR>//建立二叉树(先序)<BR>node *create(std::istream &amp;is)<BR>{<BR> char ch;<BR> is &gt;&gt; ch;<BR> if (ch == '*')<BR>&nbsp;&nbsp;return 0;<BR> else<BR> {<BR>&nbsp;&nbsp;struct node newr = new node;<BR>&nbsp;&nbsp;newr -&gt;data = ch;<BR>&nbsp;&nbsp;newr -&gt;lc = create(is);<BR>&nbsp;&nbsp;newr -&gt;rc = create(is);<BR>&nbsp;&nbsp;return newr;<BR> }<BR>}<BR>//遍历二叉树(先序)<BR>void pre_order(struct node *root)<BR>{<BR> if (root != 0) <BR> {<BR>&nbsp;&nbsp;putchar(root -&gt;data);<BR>&nbsp;&nbsp;pre_order(root -&gt;lc);<BR>&nbsp;&nbsp;pre_order(root -&gt;rc);<BR> }<BR>}<BR>//遍历二叉树(中序)<BR>void m_order(struct node *root)<BR>{<BR> if (root != 0)<BR> {<BR>&nbsp;&nbsp;m_order(root -&gt;lc);<BR>&nbsp;&nbsp;putchar(root -&gt;data);<BR>&nbsp;&nbsp;m_order(root -&gt;rc);<BR> }<BR>}<BR>//遍历二叉树(后序)<BR>void post_order(struct node *root)<BR>{<BR> if (root != 0)<BR> {<BR>&nbsp;&nbsp;post_order(root -&gt;lc);<BR>&nbsp;&nbsp;post_order(root -&gt;rc);<BR>&nbsp;&nbsp;putchar(root -&gt;data);<BR> }<BR>}<BR>void main()<BR>{}<BR>//////////////////////////////////////////////////////////////////<BR>这个程序总是通不过,不知是什么原因??<BR>我查遍了了MSDN,也没弄懂std::istream &amp;is的意思。而且我也没清楚编译器提示的错误出在哪里?<BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:fox_xu 回复日期:2003-10-21 22:59:10
<br>内容:这是编译信息<BR>Compiling...<BR>tree.c<BR>E:\C语言学习资料\算法源码\二叉树\tree.c(11) : error C2143: syntax error : missing '{' before '*'<BR>E:\C语言学习资料\算法源码\二叉树\tree.c(11) : error C2143: syntax error : missing ')' before ':'<BR>E:\C语言学习资料\算法源码\二叉树\tree.c(11) : error C2143: syntax error : missing '{' before ':'<BR>E:\C语言学习资料\算法源码\二叉树\tree.c(11) : error C2059: syntax error : ':'<BR>E:\C语言学习资料\算法源码\二叉树\tree.c(11) : error C2059: syntax error : ')'<BR>Error executing cl.exe.<BR><BR>tree.exe - 5 error(s), 0 warning(s)
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:学vc 回复日期:2003-10-22 10:43:16
<br>内容:1..请将扩展名改为cpp.即c++的源文件,因为你用了输入流,这不是c的。<BR>2。。std是标准名字空间。如果你包含&lt;iostream&gt;,则用std::istream,<BR>如果你包含&lt;iostream.h&gt;,可直接用istream.<BR>3。。一个个小错误<BR>struct node *create(std::istream&amp; is)<BR>{<BR>。。。。。&nbsp;&nbsp;&nbsp;&nbsp;<BR>struct node newr = new node; //应为struct node *<BR>。。。。<BR>}
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:fox_xu 回复日期:2003-10-22 17:41:09
<br>内容:多谢你的帮助,已经编译通过了。请问在主函数中调用create()时参数应该是什么??
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -