Free考研资料 - 免费考研论坛

 找回密码
 注册
打印 上一主题 下一主题

求一道数据结构的问题

[复制链接]
跳转到指定楼层
楼主
zhixiao 发表于 09-8-20 15:06:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教各位朋友:严蔚敏《数据结构(C语言版)习题集》第三章3.3写出下列程序段的输出结果(栈的元素类型SElemType为char)。
void main(){
Stack S;
Char x,y;
InitStack(S);
x=`c`;y=`k`;
Push(S,x);Push(S,`a`);Push(S,y);
Pop(S,x);Push(S,`t`);Push(S,x);
Pop(S,x);Push(S,`s`);
While(!StackEmpty(S){Pop(S,y);printf(y);}
Printf(x);
}
输出结果:答案是stack最后不是printf(x)吗,x是C呀,应该输出stacc.麻烦朋友讲解一下。

谢谢。
沙发
davidx 发表于 09-8-21 09:47:02 | 只看该作者
void main(){
Stack S;
Char x,y;
InitStack(S);
x=`c`;y=`k`;
Push(S,x);Push(S,`a`);Push(S,y);
Pop(S,x);Push(S,`t`);Push(S,x);
Pop(S,x);
Push(S,`s`);
While(!StackEmpty(S){Pop(S,y);printf(y);}
Printf(x);
}

红色部分,x=栈顶元素K,改变在此
紫色部分,X压入又弹出对它的值没影响.
最后,X=K
板凳
 楼主| zhixiao 发表于 09-11-8 07:32:03 | 只看该作者
非常感谢,辛苦了
地板
5001414goodboy 发表于 09-11-9 22:42:50 | 只看该作者
多谢分享^
您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系我们|Free考研资料 ( 苏ICP备05011575号 )

GMT+8, 24-9-30 13:23 , Processed in 0.081568 second(s), 12 queries , Gzip On, Xcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表