实验报告
**_专业 **班 _**年__*月_**日
姓名_***__ 学号***电话***
一:实验
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
目
编写括号匹配算法。
二:.需求
分析
定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析
本演示程序用TC 编写,完成对输入括号进行匹配检验。
① 输入的形式和输入值的范围:输入一串含有括号的字符。输入的类型为字符型。
② 输出的形式:如果是匹配的字符串就返回,这是匹配的,否者返回这不是匹配的。
③ 程序所能达到的功能:判断一串字符是否为匹配的。
④ 测试
1)、输入{78+55[(66-98)*4]},输出结果为“这是匹配的括号”;
2)、输入{{[[]]}})))),输出结果为“这不是匹配的括号”;
三:概要设计
1) 为了实现上述程序功能,需要定义栈的抽象数据类型
typedef char DataType;
typedef struct{
DataType data[maxsize];
int top;
}SqeStack;
2)一个主函数包含匹配函数;
Main();
四:详细设计
实现概要设计中定义的所有的数据类型,对每个操作给出伪码算法。
匹配算法:
Math()
{s=SqeStackInitstack();
{ i=0;
while(i
0) //判断s.top>0时,说明不匹配
tag=0;
}
SqeStackPrint(s) ;
printf("\n");
if(tag==0)
{
printf("这不是匹配的括号字符串");
}
else printf("这是匹配的括号字符串");
printf("\n");
}
五:程序代码
#include "stdio.h"
#define maxsize 100
#define N 100
typedef char DataType;
typedef struct{
DataType data[maxsize];
int top;
}SqeStack;
SqeStack SqeStackInitstack()
{ SqeStack s;
s.top=0;
return s;
}
void SqeStackPush(SqeStack *s ,char x)
{
s->top++;
s->data[s->top]=x;
}
char SqeStackPop(SqeStack s)
{
char temp;
temp=s.data[s.top];
s.top--;
return temp;
}
void SqeStackPrint(SqeStack s)
{
while (s.top!=0)
{
printf("%4c",s.data[s.top--]);
}
}
main()
{ SqeStack s;
int i,j,t;
int tag=1;
char c,temp;
char a[N];
j=0;
printf("请输入带括号的字符串:\n");
c=getchar();
while(c!='$')
{
a[j++]=c;
c=getchar();
}
printf("这个数组的长度是%d",j);
printf("\n");
s=SqeStackInitstack();
{ i=0;
while(i0)
tag=0;
}
SqeStackPrint(s) ;
printf("\n");
if(tag==0)
{
printf("这不是匹配的括号字符串");
}
else printf("这是匹配的括号字符串");
printf("\n");
}
六:程序测试
输入一段带括号的字符,判断是否匹配。
1、 输入匹配括号--{78+55[(66-98)*4]}
运行截图:
2、 输入{{{{[[[[]]]]
运行截图:
七.
心得
信息技术培训心得 下载关于七一讲话心得体会关于国企改革心得体会关于使用希沃白板的心得体会国培计划培训心得体会
体会和遇到的问题
这次编程,首先我觉得是对我C语言知识的进一步提高和巩固,在编程中遇到了很多的问题,比如在编写建栈的函数时,总是不能按照我输进去的数据生成栈,最后,仔细是检查代码,发现程序中建立链栈的四步中有一部的指针搞颠倒了,害得我忙了好久;还有些问题是向室友求教最后搞定的,比如,在编写菜单时,总不知道参数是怎样传递的问题,自己的程序就不知道怎么去进行了,最后实在是没有办法,问了下米昂同学,然后才恍然大悟。结果很快就把代码写好了。
其实,程序一定要自己坚持做,遇到问题时不能怕,要敢于面对问题,敢于解决问题,积极的想办法、想注意,实在是自己不能解决的可以求助与他人,但是一定要记住的是绝对不能依靠别人,同学的作用只是去引导你一下。
我想,在以后的编程中我会更加的出色,能够很快的完成作业!
我永远坚信的一句话“长风破浪会有时,直挂云帆济沧海”。