电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

数据结构C语言版判断回文数实验报告VIP免费

数据结构C语言版判断回文数实验报告_第1页
1/7
数据结构C语言版判断回文数实验报告_第2页
2/7
数据结构C语言版判断回文数实验报告_第3页
3/7
数据结构实验报告 判断回文数 班 级 : 班内 序 号 : 学 生 姓 名 : 指 导 教 师 : 时间 : 2011年 10月 24日 一、实验目的 熟悉栈和队列的各项操作,区别栈和队列的操作原理。 二、实验内容 利用栈的操作完成读入的一个以*结尾的字符序列是否是回文序列的判断。 回文序列即正读与反读都一样的字符序列,例如:43211234*是回文序列,而 789678*不是。 三、数据结构及算法思想 算法思想:从键盘上读取一个字符,同时存储在顺序栈与链队列之中,直到字符序列的最后一个字符为*停止插入。在程序中设置了一个标志位 flag,将输入的序列分别做入栈、出栈、入队、出队操作,若出栈与出队的数据完全一致,则将 flag 标志为 1,否则为零。Flag为 1,则表示该序列是回文序列,否则,为非回文序列。 四、模块划分 1. 对各个模块进行功能的描述 (1)v oid InitStack(SeqStack *S):栈初始化模块,即初始化一个空栈,随后对该空栈进行数据的写入操作; (2)int Pu sh(SeqStack *S,char x ,int cnt):入栈操作,即给空栈中写入数据,数据长度有宏定义给出; (3)int Pop(SeqStack * S,char * x ):出栈操作,即将栈中的数据输出,由于栈的操作是先进后出,因此,出栈的数据是原先输入数据的逆序; (4)v oid InitQu ene(SeqQu ene *Q):队列初始化,即初始化一个空队列,最后对该空队列进行数据的写入操作; (5)int EnterQu ene(SeqQu ene *Q,char x ,int cnt):入队操作,即给空队列中写入数据,数据长度一样有宏定义给出; (6)int DeleteQu ene(SeqQu ene *Q,char *x ,int cnt):出队操作,即将队列中的数据输出,由于队列的操作是先进先出,因此,出队的数据室原先输入数据的正序; (7)v oid main():主函数,用于调用前面的模块,进行出队数据与出栈数据的比较,判断输入的序列是否是回文序列。 2. 模块之间关系及其相互调用的图示 五、详细设计及运行结果 (1)程序设计及编码 #include #include #define MAX 50 #define FALSE 0 #define TURE 1 //定义栈 typedef struct { char elem[MAX]; int top; }SeqStack; //定义循环队列 typedef struct { char element[MAX]; int front; int rear; }SeqQuene; //初始化栈 void InitStack(SeqStack *S) { S->top = -1;//构造一个空栈 } //入栈 ...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

数据结构C语言版判断回文数实验报告

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部