首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
判断括号是否匹配是栈的主要应用之一。设字符表达式存储在数组E[n]中,’#’为字符表达式的结束符。给出一个算法,用于判断表达式中括号(’(’和’)’)是否配对。要求: 根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释。
判断括号是否匹配是栈的主要应用之一。设字符表达式存储在数组E[n]中,’#’为字符表达式的结束符。给出一个算法,用于判断表达式中括号(’(’和’)’)是否配对。要求: 根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释。
admin
2019-08-01
97
问题
判断括号是否匹配是栈的主要应用之一。设字符表达式存储在数组E[n]中,’#’为字符表达式的结束符。给出一个算法,用于判断表达式中括号(’(’和’)’)是否配对。要求:
根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释。
选项
答案
算法的设计如下: int exyx(char E[],int n){ //判断表达式中圆括号是否匹配 char s[30]; //s是一维数组,容量足够大,用作存放括号的栈 int top=0; //top用作栈顶指针 s[top]=#’; //’#’先入栈,用于和表达式结束符号’#’匹配 int i=0; //字符数组E的工作指针 while(E[i]!=’#’) //逐字符处理字符表达式的数组 switch(E[i]){ case’(’:s[++top]=‘(’;i++;break; case’)’:if(s[top]==’(’){top--;i++;break;} else{printf(”括号不配对”);exit(0);} case’#’:if(s[top]==’#’){printf(”括号配对\n”);return(1);} else{printf(”括号不配对\n”);return(0);}//括号不配对 default:i++; //读入其他字符,不作处理 f }
解析
转载请注明原文地址:https://kaotiyun.com/show/9jCi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
论述公元前6世纪至公元1世纪佛教的形成与传播。
论述屋大维的元首政制的统治特点。
武则天时期,为了管理天山以北的广大区域而设立了()。
第二次工业与第一次工业革命相比较,其新特点是()。①科学和技术真正结合起来②第二次工业革命几乎同时发生在几个先进的资本主义国家③与第一次工业革命交叉进行④使社会第一次分裂为工人阶级和资产阶级
在华盛顿会议上,美英支持中国要求的意图是()
在1956年4月提出实现马克思主义同中国实际“第二次结合”任务的是()。
最早以立法形式巩固大化改新成果的法令是()。
罗马在应用科学尤其是农艺学方面取得了较高的成就,其中《论农业》是研究罗马帝国初期奴隶制经济不可多得的历史文献,《论农业》的作者是()。
曾经来华留学,并在日本大化改新中发挥重要作用的是()。
在一个双链表中,在*p结点之前插入*q结点的操作是()。
随机试题
一般而言,羞耻感和自尊心属于()。
英国著名的统计学家皮尔逊和英国著名的科学家高尔顿在研究中提出了()
下列选项中,____________是数据库技术的主要特点。
下列哪一项心电图表现对确诊室性心动过速最有价值?
给氧的适应症,下列哪项不妥
胰岛素对脂肪代谢调节错误的是
下列关于规划环境影响评价工作中,环境影响识别与确定环境目标和评价指标的表述,说法有误的是()。
在导入阶段的财务战略中,使用的风险搭配是()。
_____isthemainrhymingpatternin"Mrs.White/Hadafright/Inthemiddleofthenight".
Thetranslatormusthaveanexcellent,up-to-dateknowledgeofhissourcelanguages,fullfacilityinthehandlingofhistarget
最新回复
(
0
)