欢迎来到天天文库
浏览记录
ID:56356692
大小:27.00 KB
页数:3页
时间:2020-06-22
《用优先函数实现对表达式的运.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、用优先函数实现对表达式的运算班级学号姓名:指导老师:一.实验目的:1、学习语法分析的主要方法;2、熟悉复习词法分析的方法;3、表达式求值;4、熟悉C语言并提高动手能力;二.实验内容:输入一个表达式,判断是否正确后,求出其值;三.实验硬件和软件平台:INTELC433MHzCpu128MbSDRAMTurboC2.0MicrosoftWindowsXPSP1四.步骤和算法描述:1.调用词法分析程序,转换表达式成为类号;2.调用语法分析程序,判断表达式正确与否;3.根据代码的优先级,求表达式的值;五.源程序:#
2、include#include#include#include#include#include"d:TURBOC2document1.c"#include"d:TURBOC2documentNEW.c"intcheck=10;intchange(char*cd1,inta){intlen,i,o=0,c,j;for(i=0;i=i;j--){if(j==i)c=1*c
3、;elsec=c*10;}o=o+(cd1[i+1]-48)*c;}return(o);}intCount(inta,intb,charc){intdd;switch(c){case'*':dd=a*b;break;case'/':dd=a/b;break;case'+':dd=a+b;break;case'-':dd=a-b;break;default:printf("Error!");}return(dd);}charcompare(chara,charb){if(a=='*'&&b=='/')retu
4、rn('>');if(a=='/'&&b=='*')return('>');if(a=='+'&&b=='-')return('>');if(a=='-'&&b=='+')return('>');if(a=='*'&&b=='+')return('>');if(a=='*'&&b=='-')return('>');if(a=='/'&&b=='+')return('>');if(a=='/'&&b=='-')return('>');if(a=='+'&&b=='*')return('<');if(a=='+
5、'&&b=='/')return('<');if(a=='-'&&b=='*')return('<');if(a=='+'&&b=='*')return('<');if(a=='*'&&b=='(')return('<');if(a=='/'&&b=='(')return('<');if(a=='+'&&b=='(')return('<');if(a=='-'&&b=='(')return('<');if(a=='*'&&b==')')return('>');if(a=='/'&&b==')')return
6、('>');if(a=='+'&&b==')')return('>');if(a=='-'&&b==')')return('>');if(a=='('&&b=='*')return('<');if(a=='('&&b=='/')return('<');if(a=='('&&b=='+')return('<');if(a=='('&&b=='-')return('<');if(a==')'&&b=='*')return('>');if(a==')'&&b=='/')return('>');if(a==')'&
7、&b=='+')return('>');if(a==')'&&b=='-')return('>');if(a=='*'&&b==';')return('>');if(a=='/'&&b==';')return('>');if(a=='+'&&b==';')return('>');if(a=='-'&&b==';')return('>');if(a=='#'&&b=='*')return('<');if(a=='#'&&b=='/')return('<');if(a=='#'&&b=='-')return('
8、<');if(a=='#'&&b=='+')return('<');if(a=='#'&&b==';')return('=');if(a=='('&&b=='(')return('<');if(a==')'&&b==')')return('>');if(a==')'&&b=='#')return('>');if(a=='*'&&b=='*')return('>');if(a=='/'&&b=='/')return
此文档下载收益归作者所有