91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 6KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2022-08-09
  • 語言: Java
  • 標簽: 編譯??java??語法分析??

資源簡介

java實現的語法分析器,包括詞法分析 語法分析采用自頂向下,遞歸下降的方法

資源截圖

代碼片段和文件信息

import?java.io.*;
import?java.util.*;
public?class?cifa?{

/**
?*?@param?args
?*/
static?int?code;
static?String?value;
static?int?index;
static?StringBuilder?sb;
static?String?s;
static?char?ch;
static?String[]?key?={“program““begin““end““var““integer““if““then““else““do““while“};
static?int?linenum;
static?boolean?isLetter(char?ch){
return?((ch>=‘a‘)&&(ch<=‘z‘))||((ch>=‘A‘)&&(ch<=‘Z‘));
}

static?boolean?isDigit(char?ch){
return?(ch>=‘0‘)&&(ch<=‘9‘);
}

static?boolean?isBC(char?ch){
return?(ch==‘?‘)||(ch==9);
}

public?static?void?main(String[]?args)?throws?IOException?{
//?TODO?Auto-generated?method?stub

BufferedReader?in?=?new?BufferedReader(new?FileReader(“in.txt“));
PrintWriter?out?=?new?PrintWriter(new?BufferedWriter?(new?FileWriter(“out.txt“)));
linenum=1;
while((s=in.readLine())!=null){
index=0;
while(index sb?=?new?StringBuilder();
ch?=?s.charAt(index++);
while(isBC(ch)){
if(index ch?=?s.charAt(index++);
}else?{
index++;
break;
}
}
if(isLetter(ch)){
while(isLetter(ch)||isDigit(ch)){
sb.append(ch);
//
if(index ch?=?s.charAt(index++);
}else?{
index++;
break;
}
}
index--;
code=0;
String?temp=sb.toString();
for(int?i=0;i<10;i++){
if(key[i].equals(temp)){
code=i+1;
value=“__“;
}
}
if(code==0){
out.println(“(11“?+sb?+?“)“);
}else{
out.println(“(“+?code?+““?+value?+?“)“);
}
}
else?if(isDigit(ch)){
while(isDigit(ch)){
sb.append(ch);
//
ch=s.charAt(index++);
}
index--;
out.println(“(12“?+sb?+?“)“);

}else?if(ch==‘+‘){out.println(“(13__)“);}
else?if(ch==‘-‘){out.println(“(14__)“);}
else?if(ch==‘(‘){out.println(“(15__)“);}
else?if(ch==‘)‘){out.println(“(16__)“);}
else?if(ch==‘=‘){out.println(“(17__)“);}
else?if(ch==‘>‘){out.println(“(18__)“);}
else?if(ch==‘<‘){out.println(“(19__)“);}
else?if(ch==‘;‘){out.println(“(20__)“);}
else?if(ch==‘‘){out.println(“(21__)“);}
else?if(ch==‘:‘){
if(s.charAt(index++)==‘=‘){
out.println(“(23__)“);
}
else{
index--;
out.println(“(22__)“);
}
}else?if(ch==‘*‘){out.println(“(24__)“);}
else?if(ch==‘/‘){out.println(“(25__)“);}
}
}
in.close();
out.close();
}

}

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????????232??2009-05-25?19:54??bianyi\.classpath

?????文件????????382??2009-05-25?19:54??bianyi\.project

?????文件???????3300??2009-05-25?20:16??bianyi\bin\cifa.class

?????文件???????3251??2009-05-25?21:25??bianyi\bin\yufatest.class

?????文件?????????30??2009-05-25?21:24??bianyi\in.txt

?????文件????????134??2009-05-25?21:24??bianyi\out.txt

?????文件???????2582??2009-05-25?20:16??bianyi\src\cifa.java

?????文件???????3145??2009-05-25?21:25??bianyi\src\yufatest.java

?????文件??????????0??2009-05-25?21:25??bianyi\yufaout.txt

?????目錄??????????0??2009-05-26?14:53??bianyi\bin

?????目錄??????????0??2009-05-26?14:53??bianyi\src

?????目錄??????????0??2009-05-26?14:53??bianyi

-----------?---------??----------?-----??----

????????????????13056????????????????????12


評論

共有 條評論