求下面的程序的结果~
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);
}
求下面的程序的结果~void main( ){Stack S;Char x,y;InitStack(S);X=’c’;y
答案:1 悬赏:10 手机版
解决时间 2021-07-31 14:38
- 提问者网友:浪荡绅士
- 2021-07-31 01:22
最佳答案
- 五星知识达人网友:胯下狙击手
- 2021-07-31 01:30
根据堆栈的“后进先出”的特性,我们可以得到如下过程:
void main( ){
Stack S;
Char x,y;
InitStack(S);
x=’c’;y=’k’; //x='c',y='k'
Push(S,x); //x='c',y='k',S=c
Push(S,’a’); //x='c',y='k',S=ac
Push(S,y); //x='c',y='k',S=kac
Pop(S,x); //x='k',y='k',S=ac
Push(S,’t’); //x='k',y='k',S=tac
Push(S,x); //x='k',y='k',S=ktac
Pop(S,x); //x='k',y='k' S=tac
Push(S,’s’); //x='k',y='k' S=stac
while(!StackEmpty(S))
{
Pop(S,y); //依次为y='s',y='t',y='a',y='c'
printf(y); //打印依次为s,t,a,c
}
Printf(x);//x='k'
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯