欢迎来到天天文库
浏览记录
ID:47280881
大小:15.02 KB
页数:3页
时间:2020-01-09
《(数据结构)括号匹配的检验(源代码)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、数据结构括号匹配问题#include#include#defineTURE1#defineFALSE0#defineOK1#defineERROR0#defineINEEASLIBE-1#defineOVERFLOW-2typedefintstatus;typedefcharelemtype;typedefstruct{elemtype*data;intlength;elemtype*top;}list;statuscreat(list&L){L.data=(elemtype*)malloc(2*sizeof(elemtype))
2、;if(!L.data){returnERROR;}L.top=L.data;L.length=1;returnOK;}statuspush(list&L,elemtypee){elemtype*dat;dat=(elemtype*)realloc(L.data,(L.length+1)*sizeof(elemtype));if(!dat){returnERROR;}L.data=dat;L.length++;*(L.top)=e;L.top++;returnOK;}statuspop(list&L,elemtype&e){if(L.top==L.data){prin
3、tf("已是堆低无数据元素");returnERROR;}L.top--;e=*(L.top);returnOK;}main(){listL;creat(L);chara[20],b;inti=0,m=0;while(i<20){printf("请输入括号序列:('#'表示输入结束)");scanf("%c",&a[i]);getchar();if(a[i]=='#'){break;}if(a[i]=='('
4、
5、a[i]==')'
6、
7、a[i]=='['
8、
9、a[i]==']'
10、
11、a[i]=='{'
12、
13、a[i]=='}'
14、
15、a[i]=='<'
16、
17、a[i]=='
18、>'){i++;}else{printf("输入的不是括号字符请重新输入");}}m=i;i=0;while(i19、20、a[i]==')'21、22、a[i]=='}'){if(L.top==L.data){printf("括号匹配出错");exit(0);}else{pop(L,b);if((a[i]-b)!=2&&(a[i]-b)!=1){printf("括号匹配出错");exit(0);}}}elsepush(L,a[i]);i++;}if(L.data!=L.top)printf("括号匹配出错");elseprintf23、("括号匹配成功");}
19、
20、a[i]==')'
21、
22、a[i]=='}'){if(L.top==L.data){printf("括号匹配出错");exit(0);}else{pop(L,b);if((a[i]-b)!=2&&(a[i]-b)!=1){printf("括号匹配出错");exit(0);}}}elsepush(L,a[i]);i++;}if(L.data!=L.top)printf("括号匹配出错");elseprintf
23、("括号匹配成功");}
此文档下载收益归作者所有