阅读以下算法说明和C程序,根据要求回答问题1和问题2。 【说明】 【算法4-1】的功能是用来检查文本文件中的圆括号是否匹配。若文件中存在圆括号而没有对应的左括号或者右括号,则给出相应的提示信息,如图1-18所示。 在【算法4-1】中,slack为一整数栈。算法中各函数的说明如表1-11所示。 【算法4-1】 将栈stack置空,置EOF为false Ch<-nextch(); while(not EOF) k←kind(ch); if (k ==(1) ) { push( (2) ); push( (3) );} else if( k ==(4) ) if(not empty()){ pop(); pop();) else{ 显示错误信息(缺少对应左括号或右括号): 显示行号row:显示列号col:) End if End if Ch<-nextch(); end while if(not empty()) 显示错误信息(缺少对应左括号或右括号): While(not empty()){ row<-pop(); col<-pop(): 显示行号row:显示列号col;) End while End if 为了识别更多种类的括号,对【算法4-1】加以改进后得到【算法4-2】。【算法4-2】能够识别圆括号、方括号和花括号(不同类型的括号不能互相匹配)。改进后,函数kind(charch)的参数及其对应的返回值如表1-12所示。 【算法4-2】 将栈stack置空,置EOF为false Ch<-nextch(); while(not EOF){ k<- kind(ch); if(k > 0) if(判断条件1){ push( (5) ); push( (6) ); push( (7) );} else if(判断条件2 and判断条件3){ pop(); pop(); pop();} else { 显示错误信息(缺少对应左括号或右括号); 显示行号row;显示列号col;) end if end if ch <- nextch();) end while if(not empty()){ 显示错误信息(缺少对应左括号或右括号); While(not empty()){ Pop(); row <- pop(): col <- pop(); 显示行号row;显示列号col;)) end while end if 请将【算法4-1】和【算法4-2】中,(1)~(7)空缺处的内容补充完整。