語法分析程式
#include#includetypedef
struct link //
字元鍊錶
link;
char special[10
];void specialchar(link *charhead);
main()
while(n!='\n'
); q=charhead->next;
/*while(q!=null)
*/printf(
"語法分析:\n");
specialchar(charhead);
}void specialchar(link *charhead)}}
}break
;
case'i
': //
判斷是否是識別符號if
special[0]=q->data;
q=q->next;
if(q->data=='f'
)
break
;
case't
':special[
0]=q->data;
q=q->next;
if(q->data=='h'
) }}
break
;
case'w
':special[
0]=q->data; //
一步一步存入陣列
q=q->next;
if(q->data=='h'
) }}
}break
;
case'd
':special[
0]=q->data;
q=q->next;
if(q->data=='o'
)
if(q->data=='d'
)
}break
;
case'e
':special[
0]=q->data;
q=q->next;
if(q->data=='f'
)
}break
;
case'l
':special[
0]=q->data; //
一步一步存入陣列
q=q->next;
if(q->data=='('
) }}
}}
}break
;
case'+
':printf(
"《加號》 %c
",q->data);
printf("\n
");break
;
case'-
':printf(
"《減號》 %c
",q->data);
printf("\n
");break
;
case'*
':printf(
"《乘號》 %c
",q->data);
printf("\n
");break
;
case'/
':printf(
"《識別符號》 %c
",q->data);
printf("\n
");break
;
case':
':special[
0]=q->data;
q=q->next;
if(q->data=='='
)
else
printf(
"《賦值號》 %c
",special[0
]); printf("\n
");break
;
case
'special[
0]=q->data;
q=q->next;
if(q->data=='='
)
else
if(q->data=='
>')
else
break
;
case
'>':
special[
0]=q->data;
q=q->next;
if(q->data=='='
)
else
break
;
case'=
':printf(
"《賦值符》 %c
",q->data);
printf("\n
");break
;
case';
':printf(
"《分號》 %c
",q->data);
printf("\n
");break
;
case'(
':printf(
"《左括號》 %c
",q->data);
printf("\n
");break
;
case')
':printf(
"《右括號》 %c
",q->data);
printf("\n
");break
;
case'#
':printf(
"《井號》 %c
",q->data);
printf("\n
");break; }
q=q->next;
}}
語法分析程式輸出分析樹 語法分析 自頂向下分析
因為這是從開始符號出發推出句子,因此稱為自頂向下分析。舉個例子 首先我們給定文法g如下 s n v n n s t g wv e d 需要推導出句子s如下 g d w 我們首先進行分一次隨意的推導,過程如下 s n v n s v n s e n s e t 結果明顯與句子s不符。那麼需要對其進行重...
語法分析 自上而下分析
語法分析 是編譯過程的核心部分。它的任務是在詞法分析識別出單詞符號串的基礎上,分析並判定程式的語法結構是否符合語法規則。語言的語法結構是用上下文無關文法描述的。因此,語法分析器的工作本質上就是按文法的產生式,識別輸入符號串是否為乙個句子。這裡所說的輸入串是指由單詞符號 文法的終結符 組成的有限序列。...
LTP語法分析
詞性標註 part of speech tagging,pos 是給句子中每個詞乙個詞性類別的任務。這裡的詞性類別可能是名詞 動詞 形容詞或其他。採用863詞性標註集 tag description example a adjective 美麗 b other noun modifier 大型,西式...