数据结构——回文检测.docx_第1页
数据结构——回文检测.docx_第2页
数据结构——回文检测.docx_第3页
数据结构——回文检测.docx_第4页
数据结构——回文检测.docx_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 设计题目 回文检测设计一个程序,对输入的字符串进行检测,以判断该字符串是否是回文数据,并输出判断结果。如:“abcxcba”或“abccba”都是回文数据。2、 设计目的(1)利用栈和队列的原理设计上述题目;(2)键盘输入字符串;(3)键盘输出判断结果(如abcxcba和abccba是回文数据)。三、设计内容:利用栈的性质。先进先出,先将字符串全部入队,然后将一半的字符进行依次比较,四、程序流程图开始声明栈输入一个以结束的字符串判断字符串是否以结束N不是回文结束Y将字符串加入栈和队列中N是回文比较所有字符YN五、源程序#include stdio.h#include stdlib.h#include string.h#define EMPTY 0#define FULL 10000#define MAX 10000typedef char data;typedef struct elem data d;struct elem *next;elem;typedef struct stack int cnt;elem *top;stack;void initialize(stack *stk);void push(data d, stack *stk);data pop(stack *stk);bool empty(const stack *stk);bool full(const stack *stk); void initialize(stack *stk)stk-cnt = 0;stk-top = NULL;bool empty(const stack *stk)return stk-cnt = EMPTY;bool full(const stack *stk)return stk-cnt = FULL;void push(data d, stack *stk)elem *p; if (!full(stk)p = (elem *)malloc(sizeof(elem);p-d = d;p-next = stk-top;stk-top = p;stk-cnt+;data pop(stack *stk)data d;elem *p;if(!empty(stk)d = stk-top-d;p = stk-top;stk-top = stk-top-next;stk-cnt-;free(p); return d;int main(void)printf(输入字符串(必须以结尾来确定是否输入结束):);data inputMAX;stack temp;int i = 0;int flag = 0;initialize(&temp); scanf(%s, &input); while (inputi != ) push(inputi, &temp); i+;while (!empty(&temp) if (temp.top-d = inputflag)pop(&temp);flag+;elseprintf(此字符序列不是回文数!n);break;if (empty(&t

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论