标题:用C#实现的栈问题?
只看楼主
zzren67
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2007-6-30
 问题点数:0 回复次数:0 
用C#实现的栈问题?
主要代码:
public class Stack //栈模型的实现
{
private int[] arr; //栈元素分配的空间
private int sp; //栈顶指示器
private int count;

public Stack(int Length) //初始化栈
{
count = Length;
sp = 0;
arr = new int[Length];
}
public Stack() //初始化栈重载
{
count = 10;
sp = 0;
arr = new int[10];
}
public void Push(int e) //进栈
{
if (sp >= count) MessageBox.Show("栈已满,无法压栈");
else
{
arr[sp] = e;
sp++;
}
}
public int Pop() //出栈,取栈顶元素
{
int e;
if (sp <= 0)
{
MessageBox.Show("栈空,无法出栈");
return 0;
}
else
{
sp++;
e = arr[sp];
return e;
}
}
public bool StackEmpty() //判断栈是否为空?
{
if (sp <= 0) return true;
else return false;
}
}
Click事件代码:
private void button1_Click(object sender, EventArgs e)
{
Stack s = new Stack();
s.Push(8);
int a = s.Pop();
label1.Text = a.ToString();
}
结果是错误的,因为lable控件一直显示的是0,正确的话应该是8,麻烦大家看一下什么地方出了错误?
搜索更多相关主题的帖子: Stack int public private class 
2007-11-09 22:14



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-184925-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.270248 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved