c语言实现算符优先语法分析Word文档格式.doc

上传人:wj 文档编号:1450131 上传时间:2023-04-30 格式:DOC 页数:5 大小:19.50KB
下载 相关 举报
c语言实现算符优先语法分析Word文档格式.doc_第1页
第1页 / 共5页
c语言实现算符优先语法分析Word文档格式.doc_第2页
第2页 / 共5页
c语言实现算符优先语法分析Word文档格式.doc_第3页
第3页 / 共5页
c语言实现算符优先语法分析Word文档格式.doc_第4页
第4页 / 共5页
c语言实现算符优先语法分析Word文档格式.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

c语言实现算符优先语法分析Word文档格式.doc

《c语言实现算符优先语法分析Word文档格式.doc》由会员分享,可在线阅读,更多相关《c语言实现算符优先语法分析Word文档格式.doc(5页珍藏版)》请在冰点文库上搜索。

c语言实现算符优先语法分析Word文档格式.doc

{

zhan[z++]=ch;

}

voidpop()//出栈

z--;

voidputzhan()//打印栈内字符

for(inti=0;

i<

z;

i++)

{

printf("

%c"

zhan[i]);

}

printf("

\t"

);

intputzhong()//打印数组中剩余字符

inti=j;

do

zhongjian[i]);

}while(zhongjian[i++]!

='

#'

i-=2;

returni;

charding()//获取栈顶元素,无视E

chara;

q=z-1;

a=zhan[q--];

}while(a=='

E'

returna;

charding2()//获取栈顶元素

a=zhan[q];

intfindint(charch)/*将字符转为数字,以得到算符优先值*/

{

intt;

switch(ch)

{

case'

+'

:

t=0;

break;

-'

t=1;

*'

t=2;

/'

t=3;

('

t=4;

)'

t=5;

i'

t=6;

t=7;

}

returnt;

voidchu()//初始化

zhan[0]='

;

z=1;

c=0;

j=0;

syn=0;

zh=ding();

ch=zhongjian[j];

voidanalyse()//分析

while(zh!

='

||ch!

putzhan();

d=putzhong();

a=findint(zh);

b=findint(ch);

if(table[a][b]==-1)

{

push(ch);

j++;

printf("

移进\n"

}

elseif(table[a][b]==1)

for(intm=d;

m>

=j;

m--)

{

shu[c++]=zhongjian[m];

}

for(inti=z-1;

i>

0;

i--)

shu[c++]=zhan[i];

zh=ding2();

if(zh=='

)//当前比较为i,出栈一次

pop();

else//当前比较不为i,出栈三次

push('

//归约到E

归约\n"

shu[c++]='

'

>

'

else

syn=-1;

break;

zh=ding();

ch=zhongjian[j];

voidloadch()//读入所有字符串

inti=0;

printf("

请输入要进行算符优先分析的字符串:

\n"

do

{

ch=getchar();

prog[i++]=ch;

}

while(ch!

voidscaner()

syn=1;

ch=prog[p++];

while(ch=='

||ch=='

\n'

ch=prog[p++];

switch(ch)

case'

zhongjian[q++]='

case'

syn=0;

default:

syn=-1;

voidsaomiao()

p=0;

q=0;

scaner();

if(syn==-1)

输入符号有误!

while(syn!

=0);

voidmain()

loadch();

saomiao();

if(syn==0)

chu();

analyse();

#E\t#\t结束\n"

if(syn==0)

该字符串可被文法识别\n"

E"

for(inti=c;

=0;

printf("

shu[i]);

该字符串不可被文法识别\n"

}

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2