数据结构 实验三 栈的实现

本文是关于数据结构实验中的栈应用,主要任务是编写程序判断字符串是否为回文。实验中提到了在实现过程中遇到的问题,如数据类型错误、输入函数的选择以及在判断回文函数中栈操作的注意事项。
摘要由CSDN通过智能技术生成

数据结构 实验三 栈的实现

第三题

【问题描述】编写一个程序,判断一个字符串是否为“回文”(顺读和倒读都一样的字符串称为“回文”)。

【输入形式】长度小于100的任意字符串
【输出形式】字符串xxxx…xxxxx(不)是回文
【样例输入】abcdcba
【样例输出】yes

出现的问题:
1.编程时太马虎,竟然定义char元素类型后,在结点类型中使用了int型,导致怎么调试都不出来。
2.输入函数部分:gets()真香,垃圾getchar()。
3.判断回文函数judge()中:
(1)在将栈中元素反向存入字符型数组中时,应该先–temp -> top,之后再循环中赋值,最后要再一次赋值,不然temp -> base元素不能输入。
(2)在使用Pop()与字符型数组比较时,应该先做++temp_2 -> top操作(取决于你的Pop()算法是什么样的),不然只能得出错误结果。

#include <stdio.h>
#include <stdlib.h>
#define TRUE 1
#define FALSE 0
#define OK 1
#define ERROR -1
#define OVERFLOW -2
#define STACK_INIT_SIZE 100
#define STACKINCREMENT 10

typedef char Chartype;
typedef struct
{
    Chartype *top;
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值