全文预览

数据结构-课程设计报告-魔王语言解释

上传者:你的雨天 |  格式:doc  |  页数:13 |  大小:29KB

文档介绍
charA[]="sae";charB[]="tsaedsae";charflag='0';//flag用来标记处理括号intmark=1;intf=0;structStackS;structStacktemp;//用来处理括号外的元素InitStack(S);InitStack(temp);structLinkQueueQ;InitQueue(Q);charMoWang[100]="\0";chare1,key,e2,e;printf("请输入你想要解释的魔王语言:\n");gets(MoWang);InStack(MoWang,S);//把要解释的魔王语言压入栈中while(!StackEmpty(S)){Pop(S,e1);if(e1=='('){if(StackEmpty(S)){printf("魔王语言错误!\n");mark=0;break;}while(!StackEmpty(S)){Pop(S,e1);if(e1==')'){f=1;break;}elseif(!(e1>='a'&&e1<='z')&&!(e1>='A'&&e1<='Z')){printf("魔王语言错误!\n");mark=0;break;}}if(mark==0){break;}if(f!=1){printf("魔王语言错误!\n");break;}}elseif(e1==')'){printf("魔王语言错误!\n");mark=0;break;}elseif(!(e1>='a'&&e1<='z')&&!(e1>='A'&&e1<='Z')){printf("魔王语言错误!\n");mark=0;break;}}if(mark==1&&f==1){ClearStack(S);InStack(MoWang,S);while(!StackEmpty(S)){//栈不空时Pop(S,e1);

收藏

分享

举报
下载此文档