结构推理
程序的文法如下:
P→D
D→D;D|id T|procid;D;S
写一个语义子程序,打印该程序一共声明了多少个id。
【正确答案】
引进属性i,得到语义子程序如下:
P→D {print(D,i);}
D→D1;D2 (D·i:=D1·+D2·i;}
D→id:T {D·i:=1;}
D→proc id;D1;S {D·i:=D1·+1;}
【答案解析】
提交答案
关闭