亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? yuyifenxi.cpp

?? 語義分析:將語法分析所識(shí)別的語法成分變換為中間代碼的語義翻譯
?? CPP
字號(hào):
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#include "iostream.h"
char prog[100],token[8],ch;
char *rwtab[6]={"begin","if","then","while","do","end"};
int syn,p,m,n,sum,q;
int kk;
struct { 
	char result1[8];
    char ag11[8];
    char op1[8];
    char ag21[8];
} quad[20];
char *factor();
char *expression();
void yucu();
char *term();
void statement();
void lrparser();
char *newtemp();
void scaner();
void emit(char *result,char *ag1,char *op,char *ag2);
void main()
{ 
	int j;
	q=p=kk=0;
	printf("\n請輸入一個(gè)句子并以#結(jié)束: ");
    do
   { 
		scanf("%c",&ch);
    
		prog[p++]=ch;
   
	}while(ch!='#');
    p=0;
    scaner();
    lrparser();
    if(q>19)
		cout<<"句子太長!!!\n";
    else 
		for (j=0;j<q;j++)
			cout<<quad[j].result1<<"="<<quad[j].ag11<<quad[j].op1<<quad[j].ag21<<endl;;
}
void lrparser()
{ 

    kk=0;
    if(syn==1)      
	{ 
		scaner();
		yucu();
		if(syn==6)
		{ 	
			scaner();		
			if((syn==0)&&(kk==0))  
				printf("Success!\n");
		}
  	else 
		{ 		
			if(kk!=1)
				printf("缺少'end' !\n");       			
			kk=1;
			exit(0);	
		}	
	}
    else
	{
		cout<<"缺少begin!\n";
		kk=1;   
		exit(0);
	}
}
void yucu()
{ 
	statement(); 
	while(syn==26)
	{ 
		scaner();
        statement();
   }
}
void statement()
{ 
	char tt[8],eplace[8]; 
    if (syn==10)
	{ 
		strcpy(tt,token);
		scaner();     
		if(syn==18)
   		{
			scaner();	
			strcpy(eplace,expression());
			emit(tt,eplace,"","");
		}    	 
		else 
	 	{ 		 
			printf("缺少 ':=' !\n");     
			kk=1;	
			exit(0);    
		}	
	}
}
char *expression()
{ 
	char *tp,*ep2,*eplace,*tt;
	tp=(char *)malloc(12);
	ep2=(char *)malloc(12);
	eplace=(char *)malloc(12);
	tt=(char *)malloc(12);
	strcpy(eplace,term());
	while((syn==13)||(syn==14))
   { 
		if (syn==13)
			strcpy(tt,"+");
		else strcpy(tt,"-");
		scaner();
		strcpy(ep2,term());
		strcpy(tp,newtemp());
		emit(tp,eplace,tt,ep2);
		strcpy(eplace,tp);
	}
	return (eplace);
}
char *term()
{ 
	char *tp,*ep2,*eplace,*tt;
	tp=(char *)malloc(12);
	ep2=(char *)malloc(12);
	eplace=(char *)malloc(12);
	tt=(char *)malloc(12);
	strcpy(eplace,factor());
	while((syn==15)||(syn==16))
	{
		if (syn==15)
			strcpy(tt,"*");
		else strcpy(tt,"/");
		scaner();
		strcpy(ep2,factor());
		strcpy(tp,newtemp());
		emit(tp,eplace,tt,ep2);
		strcpy(eplace,tp);
	}
	return (eplace);
}
char *factor()
{ 
	char *fplace;
	fplace=(char *)malloc(12);
	strcpy(fplace,"");
	if(syn==10)
   {
		strcpy(fplace,token);
    	scaner();
   }
	else 
		if(syn==11)
		{
			itoa(sum,fplace,10);
			scaner();
		}
		else
			if(syn==27)
			{ 
				scaner();
				fplace=expression();
				if(syn==28) 
				scaner();
				else 
				{ 
				printf("error on ')' !\n");
				kk=1;
				exit(0);
				}
			}
			else 
			{ 
				printf("error on '(' !\n");
				kk=1;
				exit(0);
			}
 			return (fplace);
}
char *newtemp()
{
	char *p;
	char m[8];
	p=(char *)malloc(8);
	kk++;
	itoa(kk,m,10);
	strcpy(p+1,m);
	p[0]='t';
	return(p);
}
void scaner()
{  
	sum=0;
    for(m=0;m<8;m++)
		token[m++]=NULL;
    m=0;
    ch=prog[p++];
    while(ch==' ')ch=prog[p++];
    if(((ch<='z')&&(ch>='a'))||((ch<='Z')&&(ch>='A')))
      { 
		while(((ch<='z')&&(ch>='a'))||((ch<='Z')&&(ch>='A'))||((ch>='0')&&(ch<='9')))
		{
		token[m++]=ch;
		ch=prog[p++];
		}
		p--;
		 syn=10;
		token[m++]='\0';
		for(n=0;n<6;n++)
		if(strcmp(token,rwtab[n])==0)
		{ 
			syn=n+1;
			 break;
		 }
	}
    else if((ch>='0')&&(ch<='9'))
      {
		while((ch>='0')&&(ch<='9'))
		{ 
			sum=sum*10+ch-'0';
			ch=prog[p++];
		}
		p--;
		syn=11;
      }
		 else switch(ch)
       { 
		case '<':m=0;
		ch=prog[p++];
		if(ch=='>')
        syn=21;
        else if(ch=='=')
        syn=22;
		else
		{ 
			syn=20;
			p--;
		}
		 break;
		case '>':m=0;
		ch=prog[p++];
		if(ch=='=')
		 syn=24;
		else
		{ 
			syn=23;
			p--;
		}
		break;
		 case ':':m=0;
		 ch=prog[p++];
		 if(ch=='=')
       	syn=18;
		else
		{ 
			syn=17;
			p--;
		}
		break;
		case '+': syn=13; break;
	    case '-': syn=14; break;
		case '*': syn=15;break;
		case '/': syn=16;break;
		case '(': syn=27;break;
		case ')': syn=28;break;
		case '=': syn=25;break;
		case ';': syn=26;break;
		case '#': syn=0;break;
		default: syn=-1;break;
       }
}
void emit(char *result,char *ag1,char *op,char *ag2)
{ 
	strcpy(quad[q].result1,result);
	strcpy(quad[q].ag11,ag1);
	strcpy(quad[q].op1,op);
	strcpy(quad[q].ag21,ag2);
	q++;
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕制服丝袜一区二区三区| 天堂va蜜桃一区二区三区漫画版| 宅男噜噜噜66一区二区66| 成人午夜激情在线| 国产一区二区三区不卡在线观看 | 正在播放亚洲一区| 色天天综合色天天久久| www.欧美.com| 在线观看日韩一区| 欧美图区在线视频| 欧美日韩国产片| 欧美体内she精高潮| 欧美日韩在线三级| 欧美大度的电影原声| 久久久久久9999| 亚洲免费三区一区二区| 亚洲午夜在线视频| 日本不卡123| 国产精品99久久久久久似苏梦涵 | 精品国产伦理网| 日韩欧美国产三级电影视频| 久久这里都是精品| 亚洲免费毛片网站| 免费观看成人av| 成人av网址在线| 555夜色666亚洲国产免| 亚洲国产精品99久久久久久久久| 成人欧美一区二区三区1314| 日韩主播视频在线| 成人午夜视频在线观看| 欧美高清视频不卡网| 精品国免费一区二区三区| 国产精品国产三级国产三级人妇 | 91小宝寻花一区二区三区| 欧美日韩亚洲综合一区二区三区| 亚洲国产精品ⅴa在线观看| 亚洲成a人v欧美综合天堂| 国产又黄又大久久| 欧美日韩视频在线第一区 | 懂色av中文一区二区三区| 在线观看国产精品网站| 久久只精品国产| 婷婷丁香久久五月婷婷| 成人av影视在线观看| 日韩欧美一二三| 亚洲一区在线看| av欧美精品.com| 久久天堂av综合合色蜜桃网| 五月天激情综合| 色菇凉天天综合网| 国产精品美女久久福利网站| 国产在线国偷精品产拍免费yy| 欧美亚洲国产一区二区三区va| 久久精品亚洲一区二区三区浴池| 视频一区二区中文字幕| 欧美午夜片在线看| 亚洲日本中文字幕区| 成人黄色777网| 久久久国产精品麻豆| 久久国产精品第一页| 88在线观看91蜜桃国自产| 亚洲一区二区在线观看视频| 成人福利电影精品一区二区在线观看| 精品国产一区二区在线观看| 日韩精品电影在线观看| 欧美色综合久久| 亚洲va欧美va天堂v国产综合| 91麻豆精东视频| 亚洲欧美日韩人成在线播放| 成人av网站免费| 最新热久久免费视频| 99国产精品99久久久久久| 亚洲欧美一区二区在线观看| 成人动漫一区二区在线| 午夜精品一区在线观看| 日本黄色一区二区| 亚洲丶国产丶欧美一区二区三区| 色婷婷综合久色| 亚洲1区2区3区视频| 91精品国产欧美日韩| 免费观看在线综合| 欧美一级欧美三级在线观看| 日韩精品三区四区| 日韩欧美亚洲国产精品字幕久久久 | 亚洲综合成人网| 69久久夜色精品国产69蝌蚪网| 亚洲一二三区在线观看| 欧美猛男男办公室激情| 亚洲一区二区三区三| 精品视频在线视频| 麻豆91在线观看| 欧美精品一区二区三区在线播放| 日av在线不卡| 久久久国产午夜精品| 成人午夜视频网站| 一区二区三区精品视频| 欧洲国内综合视频| 久久99久久久久| 亚洲国产精品黑人久久久| 一本大道久久a久久精二百| 亚洲一区av在线| 久久综合久久99| 在线观看国产日韩| 极品少妇一区二区| 成人免费一区二区三区在线观看| 91福利视频久久久久| 经典三级在线一区| 日韩伦理av电影| 日韩免费看的电影| 色综合久久久网| 久久精品国产99| 亚洲免费看黄网站| 亚洲人成网站精品片在线观看| 欧美精品色一区二区三区| 国产精品综合二区| 天天色综合成人网| 日韩理论在线观看| 久久午夜免费电影| 91精品国产综合久久精品麻豆 | 欧美日韩日本视频| 国产成人精品网址| 日本麻豆一区二区三区视频| 亚洲欧洲精品成人久久奇米网 | 国产一区日韩二区欧美三区| 一区二区三区美女视频| 久久综合九色综合97婷婷| 91免费观看国产| 国产麻豆91精品| 水蜜桃久久夜色精品一区的特点| 国产免费观看久久| 精品少妇一区二区三区| 欧美日韩午夜在线视频| 色女孩综合影院| 99久久精品国产麻豆演员表| 国产尤物一区二区| 男男成人高潮片免费网站| 亚洲电影你懂得| 洋洋av久久久久久久一区| 国产欧美一区二区三区在线看蜜臀| 欧美一区二区三区日韩视频| 色婷婷av一区二区三区软件| 97久久精品人人做人人爽| 成人国产视频在线观看| 国产精品亚洲成人| 国产高清不卡一区| 国产成人自拍网| 高清成人免费视频| 粉嫩av一区二区三区| 成人高清视频免费观看| fc2成人免费人成在线观看播放| 国产自产视频一区二区三区| 丰满亚洲少妇av| 成人国产免费视频| 99久久免费视频.com| 色综合色综合色综合色综合色综合 | 韩国成人精品a∨在线观看| 麻豆国产91在线播放| 激情综合色丁香一区二区| 国产资源在线一区| 丁香六月久久综合狠狠色| av高清久久久| 欧美在线不卡一区| 欧美一区二区三区爱爱| 欧美tk—视频vk| 日本一区二区免费在线观看视频| 中文子幕无线码一区tr| 亚洲嫩草精品久久| 日韩有码一区二区三区| 国产揄拍国内精品对白| 成人av动漫在线| 欧美三区免费完整视频在线观看| 欧美人与禽zozo性伦| 精品久久一区二区| 国产精品天干天干在观线| 亚洲老司机在线| 天天色 色综合| 国产精品亚洲一区二区三区妖精| 成人精品一区二区三区中文字幕| 99久久精品免费看国产免费软件| 91成人免费在线视频| 日韩一区二区三区观看| 国产欧美一区二区精品性色| 亚洲日本在线观看| 久草在线在线精品观看| 91女厕偷拍女厕偷拍高清| 在线成人高清不卡| 中文字幕日韩一区| 强制捆绑调教一区二区| 不卡一卡二卡三乱码免费网站| 日本道免费精品一区二区三区| 日韩久久久久久| 亚洲视频香蕉人妖| 极品少妇xxxx精品少妇| 欧美性极品少妇| 国产日韩影视精品| 蜜桃视频第一区免费观看| 91欧美一区二区| 国产日韩高清在线| 日韩电影在线一区二区三区| 不卡一二三区首页|