- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c词法分析器实验报告
PAGE
PAGE 19
c词法分析器实验报告
篇一:词法分析器实验报告
实验报告
实验题目:词法分析器
院系班级:计科系0901班
姓名学号: 2009210603
实验时间:2011-10-21
设计。编制并调试一个词法分析程序,加深对词法分析原理的理解。
实验要求
设计出一个简单的词法分析程序,能够识别关键字(包含begin、if、end、 while、else、 then)、标识符、数字及数种符号(+、-、*、/、(、)、:、=、:=、#、gt;、lt;、lt;gt;、lt;=、gt;=、;)。返回并打印各类字符所对应的种类编码及该字符所组成的二元组。
算法设计流程图
# include lt;stdio.hgt;
# include lt;string.hgt;
# include lt;stdlib.hgt;
# include lt;ctype.hgt;
typedef struct
{
int num;
char *word;
}WORD;
char token[255]=quot;quot;;
char input[255];
int t=0;
int i=0;
char gjz[6][10]={quot;beginquot;,quot;ifquot;,quot;thenquot;,quot;whilequot;,quot;doquot;,quot;endquot;};char ch;
WORD* start()
{
WORD*myword=new WORD;
myword-gt;num=1;
myword-gt;word=quot;quot;;
t=0;
ch=input[i];
i++;
while(ch==#39; #39;||ch==10)
{ ch=input[i];
i++;
}
if (isalpha(ch))
{
while(isalpha(ch)||isdigit(ch))
{
token[t]=ch;
t++;
token[t]=#39;\0#39;;
ch=input[i];
i++;
}
i--;
int n=0;
while(nlt;=6)
{
if(!strcmp(token,gjz[n])) {
myword-gt;num=n+1;myword-gt;word=token;return myword;
}
n++;
}//关键字
myword-gt;num=10;
myword-gt;word=token;
return(myword);
}//标识符
else if(isdigit(ch))
{
while (isdigit(ch))
{
token[t]=ch;
t++;
token[t]=#39;\0#39;;
ch=input[i];
i++;
}
i--;
myword-gt;num=11;
myword-gt;word=token;
return(myword);
}//数字
else
switch(ch)
{
case#39;+#39;:myword-gt;num=13;myword-gt;word=quot;+quot;;return(myword);break; case#39;-#39;:myword-gt;num=14;myword-gt;word=quot;-quot;;
return(myword);break; case#39;*#39;:myword-gt;num=15;myword-gt;word=quot;*quot;;return(myword);break; case#39;/#39;:myword-gt;num=16;myword-gt;word=quot;/quot;;return(myword);break; case#39;lt;#39;:ch=input[i];
i++;
if(ch==#39;gt;#39;)
{
myword-gt;num=21; myword-gt;word=quot;lt;gt;quot;; return(myword);}
else if (ch==#39;=#39;){
myword-gt;num=22; myword-gt;word=quot;lt;=quot;; return(myword);}
i--;
myword-gt;num=20;myword-gt;word=quot;lt;quot;;return(myword);break; case#39;gt;#39;:ch=input[i];
i++;
if(ch==#39;=#39;)
{
myword-gt;num=24; myword-gt;word=quot;gt;=quot;; return(myword);}
i-
您可能关注的文档
- 2014年,纺织服装行业,1-8月,运行报告.doc
- 2014年2月中国房地产指数系统百城价格指数报告.doc
- 2014工作报告,解读.doc
- 2014年8月,中国房地产指数系统百城价格指数报告.doc
- 2014年,塑料行业氯碱,需求,-报告.doc
- 2014年k12在线教育行业分析报告.doc
- 2014年一季度中国旅游业分析报告.doc
- 2014年上半年旅游经济运行分析报告.doc
- 2014年上半年物业系统员工关怀专题报告.doc
- 2014年8月份煤炭运行情况分析报告.doc
- 第十一章 电流和电路专题特训二 实物图与电路图的互画 教学设计 2024-2025学年鲁科版物理九年级上册.docx
- 人教版七年级上册信息技术6.3加工音频素材 教学设计.docx
- 5.1自然地理环境的整体性 说课教案 (1).docx
- 4.1 夯实法治基础 教学设计-2023-2024学年统编版九年级道德与法治上册.docx
- 3.1 光的色彩 颜色 电子教案 2023-2024学年苏科版为了八年级上学期.docx
- 小学体育与健康 四年级下册健康教育 教案.docx
- 2024-2025学年初中数学九年级下册北京课改版(2024)教学设计合集.docx
- 2024-2025学年初中科学七年级下册浙教版(2024)教学设计合集.docx
- 2024-2025学年小学信息技术(信息科技)六年级下册浙摄影版(2013)教学设计合集.docx
- 2024-2025学年小学美术二年级下册人美版(常锐伦、欧京海)教学设计合集.docx
文档评论(0)