- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《数据结构》实验报告
实验目:
实验目的:
实验内容:
一、需求分析
二 概要设计
Snode *Push(Snode *top,node *input)
实现指针入栈
Snode *Pop(Snode *top,node **output)
实现指针出栈
node *create()
广义表的建立
void print(node *head)
广义表的输出
本程序包括三个模块:
主程序模块
广义表的创建
广义表的遍历
入栈模块
出栈模块
模块调用图:
三 详细设计
typedef struct node
{
char data; /*存储数据*/
int tag; /*用以标记,标记为1时为左括号,标记为0时为字符,标记为-1时为新开辟节点*/
struct node *hp; /*该指针指向字表*/
struct node *tp; /*该指针指向后续节点*/
}node;
//定义链栈
typedef struct Snode
{
node *data;
struct Snode *next;
}Snode;
Snode *top
node *input
Snode *s
Snode *p;
node **output
node *p,*q,*head;
2.每个模块的分析:
主程序模块:
int main()
{
node *head;
printf(请输入广义表:\n);
head=create();
printf(该广义表为:\n);
print(head);
getchar();
getchar();
return 0;
}
广义表的创建:
node *create()
{
node *p,*q,*head; /*指针p是一个移动指针,指针q用以开辟新节点,head为头指针*/
char x; /*输入字符*/
Snode *top; /*栈顶指针*/
top=NULL; /*栈顶置空*/
q=(node *)malloc(sizeof(node)); /*申请新节点*/
q-tag=1; /*广义表形式第一个字符必为左括号*/
scanf(%c,x); /*输入字符*/
head=q; /*广义表头结点指向新开辟节点*/
p=head; /*活动指针指向头结点*/
top=Push(top,p); /*该节点指针入栈*/
q=(node *)malloc(sizeof(node)); /*开辟新节点*/
q-tag=-1; /*新节点标记为-1*/
p-hp=q; /*上一个读到的是左括号,将新节点链到当前节点的子表*/
p-tag=1; /*当前节点为左括号,标记为1*/
p-data=NULL; /*当前节点数据域为空*/
p=p-hp; /*活动指针移到当前节点的子表*/
scanf(%c,x); /*接着输入数据*/
while(top!=NULL) /*遇到左括号进栈,右括号退栈,栈空循环结束*/
{
if(x==() /*遇到左括号*/
{
q=(node *)malloc(sizeof(node)); /*申请新节点*/
q-tag=-1; /*新节点标记均为-1*/
p-hp=q; /*新节点链到当前节点的子表*/
p-tag=1; /*因是左括号,当前节点标记为1*/
p-data=NULL; /*数据域为空*/
top=Push(top,p); /*指针入栈*/
p=p-hp; /*移动指针到当前节点的子表*/
}
else if(x==,) /*遇到逗号*/
{
q=(node *)malloc(sizeof(node)); /*申请新节点,标记-1*/
q
您可能关注的文档
- 数据存储系统.doc
- 微型逆变器实验方案.doc
- 小锅各型号机顶盒升级.doc
- 润滑油的API等级分类.doc
- 推焦车轨道施工组织设计.doc
- 室内花木养护.doc
- 橡套电缆束丝硫化工序工艺守则.doc
- 挖掘身边素材.doc
- 施耐德RM6现场运行规程.doc
- 生涯规划期末作业.doc
- 电工进网证考试《电工进网证》高压类考试资料(新版)_0.doc
- 2025-2030中国船用内燃机行业市场现状供需分析及投资评估规划分析研究报告.docx
- 2025-2030中国船用凸轮夹紧滑车行业市场发展趋势与前景展望战略研究报告.docx
- 2025-2030中国船用冷却器产品行业市场现状供需分析及投资评估规划分析研究报告.docx
- 2025-2030中国船用冷却器行业市场现状供需分析及投资评估规划分析研究报告.docx
- 面部护理中的干燥补水保湿的小贴士.pptx
- 传染病防控技术.pptx
- 2025-2030中国船用制冰机行业市场发展趋势与前景展望战略分析研究报告.docx
- 2025-2030中国船用卷板机行业市场现状分析及竞争格局与投资发展研究报告.docx
- 管理者面试题库及答案.doc
文档评论(0)