华为机试 - 判断if语句括号是否匹配
来源:互联网 发布:马油扫码软件 编辑:程序博客网 时间:2024/05/17 02:23
编程的时候,if条件里面的“(”、“)”括号经常出现不匹配的情况导致编译不过,请编写程序检测输入一行if语句中的圆括号是否匹配正确。同时输出语句中出现的左括号和右括号数量,如if((a==1)&&(b==1))是正确的,而if((a==1))&&(b==1))是错误的。注意if语句的最外面至少有一对括号。提示:用堆栈来做。
输入:if((a==1)&&(b==1))
输出:RIGTH 3 3
输入:if((a==1))&&(b==1))
输出:WRONG 3 4
#include <iostream>#include <stack>#include <string>using namespace std;int main(){string ifStatement;cin>>ifStatement;stack<char> charStack;int leftNum=0,rightNum=0;for (size_t i=0;i<ifStatement.size();i++){if(ifStatement[i]=='('||ifStatement[i]==')'){if(charStack.empty())charStack.push(ifStatement[i]);else{char temp=charStack.top();if (temp=='('&&ifStatement[i]==')')charStack.pop();elsecharStack.push(ifStatement[i]);}if(ifStatement[i]=='(')leftNum++;if(ifStatement[i]==')')rightNum++;}}if(!charStack.empty())cout<<"WRONG"<<' ';elsecout<<"RIGHT"<<' ';cout<<leftNum<<' '<<rightNum<<endl;system("pause");return 0;}
0 0
- 华为机试 - 判断if语句括号是否匹配
- 华为机试-判断if语句括号是否合法
- 华为2014机考题_判断if括号是否匹配_堆栈
- 华为机试—括号匹配判断[去多余括号]
- 华为机试——字符串中括号是否匹配
- 判断括号是否匹配
- 判断括号是否匹配
- 判断括号是否匹配
- 判断括号是否匹配
- 华为机试之if语句条件判断
- 华为2014机考题目_判断if括号匹配是否合法_堆栈_简单的方法- -
- 判断if语句括号是否合法
- 【算法】 判断括号是否匹配
- 判断花括号是否匹配
- 判断花括号是否匹配
- 判断花括号是否匹配
- 判断括号匹配是否正确:
- 华为机试之括号匹配
- 赛门铁克VCS(Veritas Cluster Server)双机日常管理
- some tips
- google代理
- JVM笔记——调优案例分析与实战
- poj 3080 Blue Jeans (kmp暴力)
- 华为机试 - 判断if语句括号是否匹配
- 使用ffmpeg转换文件格式,及ffmpeg参数说明
- hdu4948 Kingdom
- 事物处理它包含了一组数据库操作命令
- vim 基础
- 华为机试之 翻译电话号码
- 对于java 反射机制的理解
- 程序闪一下titlebar的问题
- zoj 1008 Gnome Tetravex (dfs+枚举)