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

資源簡介

編譯原理實驗,語法分析的遞歸下降分析法,C語言實現的源代碼

資源截圖

代碼片段和文件信息

#include?“stdio.h“
#define?N?50
//////////////////
/*
文法?G[Z]:Z->aAcB|Bd
???A->AaB|c
???B->bBcA|b
???
*/
void?Z();
void?A();
void?A_();
void?B();
void?B_();
void?advance();
void?error();
//////////////////
char?sym;
char?str[N];
char?*next;
int?i;
int?flag=0f;
///////////////////
void?Z()
{
printf(“Z\n“);
if(flag)
return;
if(sym==‘a‘)
{
advance();
A();
if(sym==‘c‘)
{
advance();
B();
}
else
error();
}
else?
if(sym==‘b‘)
{
B();
if(sym==‘d‘)
{
advance();
}
else
error();
}
else
error();
}
///////////////////
void?A()
{
if(flag)
return;
printf(“A\n“);
if(sym==‘c‘)
{
advance();
if(flag)
return;
A_();
}

}
///////////////////
void?A_()
{
if(flag)
return;
printf(“A_\n“);
if(sym==‘a‘)
{
advance();
if(flag)
return;
B();
A_();
}
}
///////////////////
void?B()
{
printf(“B\n“);
if(sym==‘b‘)
{
advance();
if(flag)
return;
B_();
}
else?
if(*(next+1)==‘#‘)
error();
}
///////////////////
void?B_()
{

if(flag)
return;
printf(“B_\n“);
if(*(next+1)!=‘#‘)
{
B();
if(sym==‘c‘)
{
advance();
if(flag)
return;
A();
}
}
}
///////////////////
void?advance()
{
printf(“advance\n“);
if(*(next+1)!=‘#‘)
{
next++;
sym=*next;
printf(“%c\n“*next);
}
else
{
flag=1;
}
}
//////////////////
void?error()
{

printf(“This?sentence?is?not?in?accordance?with?the?rules?of?grammar\n“);//不符合文法
}
//////////////////
void?main()
{
next=str;
i=0;
printf(“input?a?string?:\n“);
scanf(“%c“&str[i]);
while(str[i]!=‘#‘)
{
i++;
scanf(“%c“&str[i]);
}
sym=str[0];
Z();
if(flag)
printf(“grammaticality\n“); //符合?文法?
}

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

?????文件???????1837??2010-04-13?15:52??shy2.cpp

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

?????????????????1837????????????????????1


評論

共有 條評論