问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

定义一个栈,可以对栈进行“压入堆栈”、“弹出栈顶元素”、“清空堆栈”、“获取栈顶元素”等操作

发布网友 发布时间:2022-05-01 15:12

我来回答

3个回答

热心网友 时间:2023-10-21 02:02

我不得不说你这代码存在很多的问题:
1.初试化栈的时候没有初始化栈底元素,这样导致这个变量全文就没用到。
2.scanf用法错误,scanf("%d",e);少了&符号。
3.str是一个字符型,不能存下字符串,如需用到,应该是char *str;str = malloc(100);最后释放空间。
4.初始化栈的功能不是消灭栈空间,clear这错误。这应该为free掉申请的栈空间。
5.exit,top等等不是字符,而是字符串。应用“”。如果想是字符应该只有一个字符。如‘E’,‘T’代表“exit”,和“top”.
6.字符串的比较用strcmp或者strncmp函数,字符之间才可以用=。
7.小问题:函数写了int的返回值后,应该每个分支都能有返回值才不会有警告。

也许还有没看见的,你可以自己再慢慢调试一下吧

热心网友 时间:2023-10-21 02:02

1:
int GetTop(sqstack s, elemtype *e)

改为

int GetTop(sqstack *s, elemtype *e)

2:if(str=='clear')

改为

if(str=='c')

scanf函数好好看看

3:
指针引用搞搞清楚

4:
.......

热心网友 时间:2023-10-21 02:02

if(str=='clear')//你先把你程序里边的字符比较更改一下吧....str是char又不是字符串

//怎么和"字符串"比较呢?

热心网友 时间:2023-10-21 02:02

我不得不说你这代码存在很多的问题:
1.初试化栈的时候没有初始化栈底元素,这样导致这个变量全文就没用到。
2.scanf用法错误,scanf("%d",e);少了&符号。
3.str是一个字符型,不能存下字符串,如需用到,应该是char *str;str = malloc(100);最后释放空间。
4.初始化栈的功能不是消灭栈空间,clear这错误。这应该为free掉申请的栈空间。
5.exit,top等等不是字符,而是字符串。应用“”。如果想是字符应该只有一个字符。如‘E’,‘T’代表“exit”,和“top”.
6.字符串的比较用strcmp或者strncmp函数,字符之间才可以用=。
7.小问题:函数写了int的返回值后,应该每个分支都能有返回值才不会有警告。

也许还有没看见的,你可以自己再慢慢调试一下吧

热心网友 时间:2023-10-21 02:02

1:
int GetTop(sqstack s, elemtype *e)

改为

int GetTop(sqstack *s, elemtype *e)

2:if(str=='clear')

改为

if(str=='c')

scanf函数好好看看

3:
指针引用搞搞清楚

4:
.......

热心网友 时间:2023-10-21 02:02

if(str=='clear')//你先把你程序里边的字符比较更改一下吧....str是char又不是字符串

//怎么和"字符串"比较呢?

热心网友 时间:2023-10-21 02:02

我不得不说你这代码存在很多的问题:
1.初试化栈的时候没有初始化栈底元素,这样导致这个变量全文就没用到。
2.scanf用法错误,scanf("%d",e);少了&符号。
3.str是一个字符型,不能存下字符串,如需用到,应该是char *str;str = malloc(100);最后释放空间。
4.初始化栈的功能不是消灭栈空间,clear这错误。这应该为free掉申请的栈空间。
5.exit,top等等不是字符,而是字符串。应用“”。如果想是字符应该只有一个字符。如‘E’,‘T’代表“exit”,和“top”.
6.字符串的比较用strcmp或者strncmp函数,字符之间才可以用=。
7.小问题:函数写了int的返回值后,应该每个分支都能有返回值才不会有警告。

也许还有没看见的,你可以自己再慢慢调试一下吧

热心网友 时间:2023-10-21 02:02

1:
int GetTop(sqstack s, elemtype *e)

改为

int GetTop(sqstack *s, elemtype *e)

2:if(str=='clear')

改为

if(str=='c')

scanf函数好好看看

3:
指针引用搞搞清楚

4:
.......

热心网友 时间:2023-10-21 02:02

if(str=='clear')//你先把你程序里边的字符比较更改一下吧....str是char又不是字符串

//怎么和"字符串"比较呢?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
为什么来大姨妈胸会胀 少儿学什么舞蹈 青年学什么舞蹈好 成年人学什么舞蹈 福州企业最低工资标准 2013年厦门的底薪是多少 生产要素的需求有哪些性质 生产要素的需求有何特点? 什么是生产要素需求 微观经济学要素需求什么是条件要素需求?它和要素需求有什么不同?_百度... C语言栈方面,出现一些错误,栈定义有点问题,搞不太懂 栈上溢的翻译,怎么用英语翻译栈溢出,栈上溢,栈 echarts如何获取y轴刻度的最大值 echarts 折线图数据对应不上y轴是怎么回事? echarts如何设置把纵坐标高度调高 因为数据很多 echarts y轴样式问题 Echarts如何在坐标轴上移动数据? 用echarts画柱状图怎么去掉y轴上的坐标 echarts中y轴总高度怎么设置, echarts没有数据 怎么显示Y轴的刻度 echarts设置y轴的min值600后,y轴起始坐标不为0 Echarts怎么改变yAxisY轴坐标的数值,或是能不能自己写一个呢 php使用echarts 有3列y轴,怎么设置不同y轴的位置 echarts 怎么让y轴在 x轴的中间 echarts怎么设置y坐标轴 如何让echarts中y轴的单位位于数值的右上角 103公交车的行车路线还有在哪儿可以坐到? 宁波103路公交车路线 河南省漯河市103路公交路线 长春103路公交路线 CAD重生成的时候显示堆栈上溢,这个问题怎么解决? 表达式求植,用算符优先法做的,还有很多错误,有哪位高手帮忙调试一下,万分感谢!!! Error: Error #1023: 发生堆栈上溢。 不要来专业术语 我是小白 求解答 求解决方法 CAD 大团的黑线,命令行显示“ 位置堆栈上溢” C语言中的二叉树遍历,编绎没有问题,调试上出现expression cannot be evaluted错误 CAD图在打开时,命令行出现“位置堆栈上溢,形55289等”是怎么回事啊?谢谢! error LNK2001: unresolved external symbol "int __cdecl correct(char)" (?corr Error: Error #1023: 发生堆栈上溢。 打开CAD图形时出现“位置堆栈上溢”,图形中文字有乱码怎么办 浮点运算 是什么? 在微信中,除了删除和拉黑对方,还有什么方法可以使对方收不到自己发的消息? 微信拉黑,再删除,对方还可以发来信息吗 _百度问一问 怎样才能在微信设置收不到对方信息,除拉黑、免打扰? _百度问一问 拯救者15只支持windows 10 系统吗 惠普光影精灵3怎样回复系统 电脑是惠普光影精灵3,安装驱动重启时陷入自动修复,重启,无限循环中 惠普光影精灵3开机密码忘了,所以重装系统,入PE后,弹出的大白菜PE装机工具里无c,d盘 光影精灵3有人装win7吗