输入一串字符串,其中有普通的字符与括号组成(包括‘(’、‘)’、‘[’,']'),要求验证括号是否匹配,如果匹配则输出0、否则输出1.
2015-06-12 22:53
573 查看
#include <stdio.h> int push(char *pstr, char *dstr ); int main() { char *str = "]d)]fa(sdf)df[dfds(dfd)] ()*()"; char data[50]; int flag = -5; flag = push(str,data); if(flag == -1) printf("%d\n",0); else printf("%d\n",1); } int push(char *pstr, char *dstr ) { int i = 0, j = -1; if(pstr == NULL) return -2; while(pstr[i] !='\0') { if(pstr[i] == '(' || pstr[i] == '[') { j++; dstr[j] = pstr[i]; } else { if(pstr[i] == ')' ) { if(j == -1) { return j+1; } else { if(dstr[j] == '(') j--; else { j++; dstr[j] = pstr[i]; } } } if(pstr[i] == ']') { if(j == -1) { return j+1; } else if(dstr[j] == '[') j--; else { j++; dstr[j] = pstr[i]; } } } i++; } return j; }
相关文章推荐
- IBM 笔记本错误对应码
- riot.js学习【四】表达式+Boolean属性
- linux系统目录架构
- 第二阶段绩效评估
- 流程控制
- 使用Java添加系统右键菜单---修改篇
- Android4.4——InputManagerService之InputReader线程
- Android调用系统相机和自定义相机实例
- [swustoj 1021] Submissions of online judge
- 前端开发框架对比
- 第5章 Hibernate的基本用法 5.1 ORM和Hibernate
- 数字变为字符串
- Sidekiq最佳实践
- Windows平台使用VDS获取主机端IQN
- 第七十一天 how can I 坚持
- BMP格式知识之一:BMP位图文件的存储格式
- ubuntu14.04 iBUS拼音输入法无法使用全拼
- java学习笔记2015-6-6
- ScrollView下嵌套GridView或ListView默认不在顶部的解决方法
- 更改源泉书签的重要性显示