中易网

一个C语言的问题!急!

答案:3  悬赏:30  
解决时间 2021-10-14 16:04
  • 提问者网友:骨子里的高雅
  • 2021-10-14 04:16
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);
}
输出结果是什么呢?还有为什么!!谢谢!

出栈和入栈啊~这都没看懂~
最佳答案
  • 二级知识专家网友:从此江山别
  • 2021-09-02 21:20
push(s,x)后
c
push(s,'a')后
a
c
push(s,y)后
k
a
c
pop(s,x)后
a
c
x='k'
push(s,'t')后
t
a
c
push(s,x)后
k
t
a
c
pop(s,x)后
t
a
c
x='k'
push(s,'s')后
s
t
a
c
最后输出:stack
全部回答
  • 1楼网友:愁杀梦里人
  • 2020-03-27 16:54
我想你注意一下,全局变量和局部变量的特征和作用域,还有就是静态变量的特性,以你的题目来分析一下吧:#include "stdio.h" int x=3;//声明了全局的整形变量 x,初始值为 3,作用在这整个程序里! void incre(); main() { int i=1; for(i=1;i<x;i++) //循环语句,总共循环2次,i=1,和i=2 incre(); //回到函数的函数体内分析! } void incre()//添加返回类型 void ,与函数原型一致 { static int x=1;   x*=x+1; printf("%d",x); }注意一下:1,在函数体内,如有与函数外同名同类型的变量的话,此时,使用函数体内的变量,覆盖函数外不的。2,静态变量的特点,未初始化默认值为0,一次操作之后,下次操作保留上次最终操作的值。基本上没有问题了吧!.^_^.
  • 2楼网友:千夜
  • 2019-06-07 16:02
貌似push,和pop都是自定义的函数啊,一般系统自己的pop(),没有参数
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息