版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 編譯原理課程設(shè)計(jì)</b></p><p> 課程設(shè)計(jì)題目 :表達(dá)式計(jì)算器</p><p> 姓 名 :***</p><p> 院(系) :計(jì)算機(jī)科學(xué)與工程學(xué)院 </p><p> 專業(yè)班級(jí) :計(jì)算機(jī)科學(xué)與技術(shù)084班</p><p><b>
2、; 學(xué) 號(hào) : </b></p><p><b> 指導(dǎo)教師 :***</b></p><p> 設(shè)計(jì)日期 :2010 年 12 月26日</p><p><b> 目錄</b></p><p><b> 表達(dá)式計(jì)算器1</b></p>
3、<p><b> 1. 需求分析1</b></p><p><b> 1.1.總述1</b></p><p><b> 2. 概要設(shè)計(jì)1</b></p><p> 2.1.開發(fā)環(huán)境1</p><p> 2.2.總體設(shè)計(jì)2</p>
4、;<p> 2.2.1.模塊結(jié)構(gòu)圖2</p><p> 2.2.2.模塊說明2</p><p> 2.2.3.界面設(shè)計(jì)3</p><p><b> 3. 詳細(xì)設(shè)計(jì)4</b></p><p> 3.1.詞法分析模塊:4</p><p> 3.1.1.詞法
5、分析簡(jiǎn)介:4</p><p> 3.1.2.詞法分析模塊的設(shè)計(jì)及實(shí)現(xiàn)4</p><p> 3.2.語法分析模塊11</p><p> 3.2.1.語法分析簡(jiǎn)介11</p><p> 3.2.2.語法分析器的實(shí)現(xiàn)11</p><p> 3.3文法分析19</p><p&
6、gt; ..1文法分析器生成工具yacc19</p><p> 4..測(cè)試分析21</p><p><b> 5課程總結(jié)24</b></p><p> 6.參考文獻(xiàn)25</p><p><b> 表達(dá)式計(jì)算器</b></p><p><b>
7、; 需求分析</b></p><p><b> 總述</b></p><p> 計(jì)算器是我們經(jīng)常使用的小工具,它能幫我們對(duì)數(shù)據(jù)進(jìn)行有效的運(yùn)算,如通過四則運(yùn)算能實(shí)現(xiàn)對(duì)輸入數(shù)據(jù)的加減乘除。本課程設(shè)計(jì)結(jié)合了編譯原理中的詞法分析、語法分析及語義分析方法,給出了表達(dá)式計(jì)算器的系統(tǒng)設(shè)計(jì)過程,并在VC++6.0中使用面向?qū)ο蟮募夹g(shù)實(shí)現(xiàn)了計(jì)算器。</p>
8、<p><b> 功能要求</b></p><p> 計(jì)算器的功能要求如下:可以支持加(+)、減(-)、乘(*)、除(/)運(yùn)算,如3+4-5*2/2;支持括號(hào)運(yùn)算,如(4+5)*5/8;判斷用戶輸入的表達(dá)式是否正確,如3+-*3是一個(gè)錯(cuò)誤的表達(dá)式,在計(jì)算時(shí)將提示錯(cuò)誤;用戶輸入表達(dá)式后,按下等號(hào)按鈕執(zhí)行計(jì)算。</p><p><b> 概要
9、設(shè)計(jì)</b></p><p><b> 開發(fā)環(huán)境</b></p><p> 開發(fā)平臺(tái):Windows XP + VC++6.0</p><p><b> 開發(fā)語言:C++</b></p><p><b> 總體設(shè)計(jì)</b></p><p&
10、gt; 程序在VC++6.0中使用面向?qū)ο蟮募夹g(shù)實(shí)現(xiàn)了計(jì)算器。模塊設(shè)計(jì)</p><p><b> 模塊結(jié)構(gòu)圖</b></p><p><b> 圖1. 程序模塊圖</b></p><p><b> 模塊說明</b></p><p> 計(jì)算器分為三個(gè)功能模塊:</
11、p><p> (1)詞法分析模塊:對(duì)輸入的表達(dá)式從左到右掃描,識(shí)別出表達(dá)式中的單詞(包括運(yùn)算符和運(yùn)算數(shù)),若單詞的構(gòu)成不符合詞法規(guī)則(運(yùn)算符和運(yùn)算數(shù)的構(gòu)成規(guī)則),則報(bào)錯(cuò)并停止計(jì)算。</p><p> (2)語法分析模塊:將單詞分解為各類語法短語,若存在不符合規(guī)則的語法短語,則報(bào)錯(cuò)并停止計(jì)算。</p><p> ?。?)計(jì)算模塊:對(duì)符合語法規(guī)則的語法短語進(jìn)行計(jì)算,若計(jì)
12、算不能進(jìn)行,則報(bào)錯(cuò)并停止計(jì)算。</p><p> 計(jì)算器的三個(gè)功能模塊中語法分析模塊起到了核心作用,如圖1所示。</p><p><b> 界面設(shè)計(jì)</b></p><p><b> 圖2表達(dá)式計(jì)算器</b></p><p><b> 詳細(xì)設(shè)計(jì)</b></p>
13、;<p><b> 詞法分析模塊:</b></p><p> 其詞法分析器調(diào)用接口為lex()</p><p><b> 詞法分析簡(jiǎn)介:</b></p><p> 詞法分析是編譯原理程序的第一階段,其任務(wù)是:從左至右逐個(gè)字符地對(duì)源程序掃描和分解,識(shí)別出一個(gè)個(gè)的單詞(如標(biāo)志符、常量、運(yùn)算符、界符等),并
14、判斷單詞的構(gòu)成是否符合詞法規(guī)則??梢允褂蒙舷挛臒o關(guān)文法來描述詞法規(guī)則,使用有限自動(dòng)機(jī)來識(shí)別單詞。</p><p> 詞法分析模塊的設(shè)計(jì)及實(shí)現(xiàn)</p><p> lex工具的基本使用方法和工作原理:</p><p> Lex工具是一種詞法分析程序生成器,它可以根據(jù)詞法規(guī)則說明書的要求來生成單詞識(shí)別程序,由該程序識(shí)別出輸入文本中的各個(gè)單詞。 一般可以分為<
15、定義部分><規(guī)則部分><用戶子程序部分>。其中規(guī)則部分是必須的,定義和用戶子程序部分是任選的。</p><p> (1)定義部分 定義部分起始于 %{ 符號(hào),終止于 %} 符號(hào),其間可以是包括include語句、聲明語句在內(nèi)的C語句。這部分跟普通C程序開頭沒什么區(qū)別。%{ #include "stdio.h"int linenum;%}</p
16、><p> (2) 規(guī)則部分 規(guī)則部分起始于"%%"符號(hào),終止于"%%"符號(hào),其間則是詞法規(guī)則。詞法規(guī)則由模式和動(dòng)作兩部分組成。模式部分可以由任意的正則表達(dá)式組成,動(dòng)作部分是由C語言語句組成,這些語句用來對(duì)所匹配的模式進(jìn)行相應(yīng)處理。需要注意的是,lex將識(shí)別出來的單詞存放在yytext[]字符數(shù)據(jù)中,因此該數(shù)組的內(nèi)容就代表了所識(shí)別出來的單詞的內(nèi)容。類似yytext這
17、些預(yù)定義的變量函數(shù)會(huì)隨著后面內(nèi)容展開一一介紹。動(dòng)作部分如果有多行執(zhí)行語句,也可以用{}括起來。</p><p> %%title showtitle();[\n]
18、60; linenum++;[0-9]+ printf("Int
19、160; : %s\n",yytext);[0-9]*\.[0-9]+ printf("Float : %s\n",yytext);[a-zA-Z][a-zA-Z0-9]* printf("Var : %s\n",yytext);
20、[\+\-\*\/\%] printf("Op : %s\n",yytext);.
21、; printf("Unknown : %c\n",yytext[0]);%%</p><p> A.規(guī)則部分的正則表達(dá)式</p><p> 規(guī)則部分是Lex描述文件中最為復(fù)雜的一部分,下面列出一些模式部分的正則表達(dá)式字符含義:</p><p> A-Z, 0-9,
22、 a-z 構(gòu)成模式部分的字符和數(shù)字。</p><p> - 指定范圍。例如:a
23、-z 指從 a 到 z 之間的所有字符。</p><p> \ 轉(zhuǎn)義元字符。用來覆蓋字符在此表達(dá)式中定義的特殊意義,
24、0; 只取字符的本身。
25、0; [] 表示一個(gè)字符集合。匹配括號(hào)內(nèi)的任意字符。如果第一個(gè)字
26、 符是^那么它表示否定模式。例如: [abC] 匹配 a, b, 和C
27、0; 的任何一個(gè)。 ^
28、60; 表示否定。</p><p> * 匹配0個(gè)或者多個(gè)上述模式。+
29、60; 匹配1個(gè)或者多個(gè)上述模式。?
30、60; 匹配0個(gè)或1個(gè)上述模式。</p><p> $ 作為模式的最后一個(gè)字符時(shí)匹配一行的結(jié)尾。</p><
31、;p> { } 表示一個(gè)模式可能出現(xiàn)的次數(shù)。 例如: A{1,3} 表示 A 可 &
32、#160; 能出現(xiàn)1次或3次。[a-z]{5} 表示長(zhǎng)度為5的,由a-z組成的 字符。此外,還可以表示
33、預(yù)定義的變量。 .
34、; 匹配任意字符,除了 \n。</p><p> ( ) 將一系列常規(guī)表達(dá)式分組。如:{Letter}({Letter}|{Digit})
35、* | 表達(dá)式間的邏輯或。</p><p> "一些符號(hào)"
36、; 字符的字面含義。元字符具有。如:"*" 相當(dāng)于 [\*]。</p><p> / 向前匹配。如果在匹配的模式中的&
37、quot;/"后跟有后續(xù)表達(dá)式, 只匹配模版中"/"前面的部分。如:模式為 ABC/D 輸入 ABCD, &
38、#160; 時(shí)ABC會(huì)匹配ABC/D,而D會(huì)匹配相應(yīng)的模式。輸入ABCE的話,
39、 ABCE就不會(huì)去匹配ABC/D。</p><p> B.規(guī)則部分的優(yōu)先級(jí)</p><p> 規(guī)則部分具有優(yōu)先級(jí)的概念,先舉個(gè)簡(jiǎn)單的例子:</p><p> %{#include "stdio.h"%}%%[\n]
40、 ;A {printf(&qu
41、ot;ONE\n");};AA {printf("TWO\n");};AAAA
42、160; {printf("THREE\n");};%%</p><p> 此時(shí),如果輸入內(nèi)容:</p><p> [root@localhost liweitest]# cat file1.txtAAAAAAA</p><p> [root
43、@localhost liweitest]# ./parser < file1.txtTHREETWOONE</p><p> Lex分析詞法時(shí),是逐個(gè)字符進(jìn)行讀取,自上而下進(jìn)行規(guī)則匹配的,讀取到第一個(gè)A字符時(shí),遍歷后發(fā)現(xiàn)三個(gè)規(guī)則皆匹配成功,Lex會(huì)繼續(xù)分析下去,讀至第五個(gè)字符時(shí),發(fā)現(xiàn)"AAAA"只有一個(gè)規(guī)則可用,即按行為進(jìn)行處理,以此類推??梢奓ex會(huì)選擇最長(zhǎng)的字符匹配規(guī)
44、則。</p><p> 如果將規(guī)則AAAA {printf("THREE\n");};改為AAAAA
45、 {printf("THREE\n");};</p><p> ./parser < file1.txt 輸出結(jié)果為:THREETWO(3) 用戶子程序部分</p><p> 最后一個(gè)%%后面的內(nèi)容是用戶子程序部分,可以包含用C語言編寫的子程序,而
46、這些子程序可以用在前面的動(dòng)作中,這樣就可以達(dá)到簡(jiǎn)化編程的目的。這里需要注意的是,當(dāng)編譯時(shí)不帶-ll選項(xiàng)時(shí),是必須加入main函數(shù)和yywrap(yywrap將下后面說明)。如:</p><p> ...%%showtitle(){printf("----- Lex Example -----\n");}</p><p> int main(){li
47、nenum=0;yylex(); /* 進(jìn)行Lex分析 */printf("\nLine Count: %d\n",linenum);return 0;}int yywrap(){return 1;}</p><p><b> 語法分析模塊</b></p><p><b> 語法分析簡(jiǎn)介</b></p
48、><p> 語法分析的任務(wù)是:在詞法分析的基礎(chǔ)上,根據(jù)語言的語法規(guī)則,把單詞串分解成各類語法短語(如句子、程序、表達(dá)式等),從而確定整個(gè)輸入串的結(jié)構(gòu)是否正確。可使用上下文無法文法描述語法規(guī)則,算符優(yōu)先分析法是一種語法分析方法,它特別適合分析各類表達(dá)式。</p><p><b> 語法分析器的實(shí)現(xiàn)</b></p><p> (1)產(chǎn)生式:
49、(0)S’→E</p><p><b> (1)E→E+T</b></p><p><b> (2)E→T</b></p><p><b> (3)T→T*F</b></p><p><b> (4)T→F</b></p><p
50、><b> (5)F→(E)</b></p><p><b> (6)F→i</b></p><p><b> (7)E→E-T</b></p><p><b> (8)T→T/F</b></p><p> ?。?)得出LR分析表:</
51、p><p><b> ?。?)代碼實(shí)現(xiàn):</b></p><p> /*以下變量用于語法分析*/</p><p><b> //終結(jié)符符號(hào)表</b></p><p><b> V vt[]={</b></p><p><b> "
52、i",$INT,</b></p><p> "+",$PLUS,</p><p> "-",$MINUS,</p><p><b> "*",$MUL,</b></p><p><b> "/",$DI
53、V,</b></p><p> "(",$LPAR,</p><p> ")",$RPAR,</p><p><b> "#",$END</b></p><p><b> };</b></p><p&
54、gt;<b> //非終結(jié)符符號(hào)表</b></p><p><b> V vn[]={</b></p><p><b> "E",$E,</b></p><p><b> "T",$T,</b></p><p&g
55、t;<b> "F",$F</b></p><p><b> };</b></p><p> //文法的產(chǎn)生式集合</p><p> P pset[]={</p><p> 1,$E,{$E,$PLUS,$T,0},//E->E+T</p><
56、p> 2,$E,{$E,$MINUS,$T,0},</p><p> 3,$E,{$T,0,0,0},</p><p> 4,$T,{$T,$MUL,$F,0},</p><p> 5,$T,{$T,$DIV,$F,0},</p><p> 6,$T,{$F,0,0,0},</p><p> 7,$F
57、,{$LPAR,$E,$RPAR,0},</p><p> 8,$F,{$INT,0,0,0},</p><p><b> 0,0,0</b></p><p><b> };</b></p><p><b> //action表</b></p><p
58、> int action[16][8] = {</p><p> // i,+,-,*,/,(,),#</p><p> S+5,BLANK,BLANK,BLANK,BLANK,S+4,BLANK,BLANK,</p><p> BLANK,S+6,S+7,BLANK,BLANK,BLANK,BLANK,ACC,</p><p&g
59、t; BLANK,R+3,R+3,S+8,S+9,BLANK,R+3,R+3,</p><p> BLANK,R+6,R+6,R+6,R+6,BLANK,R+6,R+6,</p><p> S+5,BLANK,BLANK,BLANK,BLANK,S+4,BLANK,BLANK,</p><p> BLANK,R+8,R+8,R+8,R+8,BLANK,R+8
60、,R+8,</p><p> S+5,BLANK,BLANK,BLANK,BLANK,S+4,BLANK,BLANK,</p><p> S+5,BLANK,BLANK,BLANK,BLANK,S+4,BLANK,BLANK,</p><p> S+5,BLANK,BLANK,BLANK,BLANK,S+4,BLANK,BLANK,</p>&l
61、t;p> S+5,BLANK,BLANK,BLANK,BLANK,S+4,BLANK,BLANK,</p><p> BLANK,S+6,S+7,BLANK,BLANK,BLANK,S+15,BLANK,</p><p> BLANK,R+1,R+1,S+8,S+9,BLANK,R+1,R+1,</p><p> BLANK,R+2,R+2,S+8,S
62、+9,BLANK,R+2,R+2,</p><p> BLANK,R+4,R+4,R+4,R+4,BLANK,R+4,R+4,</p><p> BLANK,R+5,R+5,R+5,R+5,BLANK,R+5,R+5,</p><p> BLANK,R+7,R+7,R+7,R+7,BLANK,R+7,R+7</p><p><b&
63、gt; };</b></p><p><b> //Goto表</b></p><p> int go[16][3] = {</p><p><b> //E,T,F</b></p><p><b> 1,2,3,</b></p><p
64、> BLANK,BLANK,BLANK,</p><p> BLANK,BLANK,BLANK,</p><p> BLANK,BLANK,BLANK,</p><p><b> 10,2,3,</b></p><p> BLANK,BLANK,BLANK,</p><p> B
65、LANK,11,3,</p><p> BLANK,12,3,</p><p> BLANK,BLANK,13,</p><p> BLANK,BLANK,14,</p><p> BLANK,BLANK,BLANK,</p><p> BLANK,BLANK,BLANK,</p><p&
66、gt; BLANK,BLANK,BLANK,</p><p> BLANK,BLANK,BLANK,</p><p> BLANK,BLANK,BLANK,</p><p> BLANK,BLANK,BLANK</p><p><b> };</b></p><p> int SLR1
67、()//SLR1分析表入口</p><p><b> {</b></p><p> int token;//輸入符號(hào)</p><p> int s,e;//狀態(tài)棧頂、符號(hào)棧頂元素</p><p> int *pr,pl;//產(chǎn)生式右部、左部</p><p> int act;//動(dòng)作&
68、lt;/p><p><b> //分析棧</b></p><p> rstack slrstack(256);</p><p> slrstack.push(0, $END);</p><p> token = Lex();</p><p> while(true)</p>&
69、lt;p><b> {</b></p><p> if (token == $UNKNOWN)</p><p><b> {</b></p><p> ProcError();</p><p> return FAIL;</p><p><b>
70、}</b></p><p><b> else</b></p><p><b> {</b></p><p> act = action[slrstack.top(s,e)][token-1];</p><p> if (act == BLANK)</p><
71、p><b> {</b></p><p> ProcError();</p><p> return FAIL;</p><p><b> }</b></p><p> else if (act == ACC)</p><p><b> {<
72、/b></p><p> printf("接受!");</p><p> return SUCCESS;</p><p><b> }</b></p><p> else if (act < R)</p><p><b> {</b>
73、</p><p><b> //移入</b></p><p> printf("移入%s\n", vt[token-1].name);</p><p> slrstack.push(act-S, token);</p><p> token = Lex();</p><p&
74、gt;<b> }</b></p><p><b> else</b></p><p><b> {</b></p><p><b> //規(guī)約</b></p><p> pr = pset[act-R-1].right;</p>
75、<p> pl = pset[act-R-1].left;</p><p> printf("規(guī)約產(chǎn)生式:%s->", vn[pl-100].name);</p><p> while(*pr != 0)</p><p><b> {</b></p><p> if (*pr
76、 >= 100)</p><p> printf("%s ", vn[*pr-100].name);</p><p><b> else</b></p><p> printf("%s ", vt[*pr-1].name);</p><p> slrstack.pop
77、(s, e);</p><p><b> pr++;</b></p><p><b> }</b></p><p> printf("\n");</p><p> s = go[slrstack.top(s,e)][pl-100];</p><p>
78、; slrstack.push(s, pl);</p><p> }//if (act == BLANK)</p><p> }//if (token == $UNKNOWN)</p><p><b> }//while</b></p><p><b> }</b></p>
79、<p><b> 文法分析</b></p><p> 文法分析器生成工具yacc</p><p> 簡(jiǎn)單來說,yacc(Yet Another Compiler-Compiler)就是編譯器的編譯器。Yacc是一個(gè)通用的工具,能夠根據(jù)用戶指定的規(guī)則,生成一個(gè)詞法分析程序。yacc能識(shí)別LALR(1)且無歧義的文法,它的輸入是詞法分析器的輸出。我們知道,
80、生成詞法分析器是lex分內(nèi)的事,因此lex和yacc常常珠聯(lián)璧合。</p><p> 先讓我們看一下yacc文件的格式。和前面介紹的lex的格式類似:</p><p> 其中聲明段聲明一些符號(hào)常量,可以為空。同lex一樣,聲明段中可以有出現(xiàn)在目標(biāo)C程序中的代碼,放在%{…%}中;還有一些yacc關(guān)鍵詞可以指示出token的結(jié)合順序:</p><p> 俗話說“
81、沒有規(guī)矩,不成方圓”。 規(guī)則段描述規(guī)則,自然是重中之重了。規(guī)則段的結(jié)構(gòu)是如下,</p><p> A表示非終結(jié)符名,BODY表示產(chǎn)生式和動(dòng)作。產(chǎn)生式包括非終結(jié)符和終結(jié)符,終結(jié)符用’’引用。一些轉(zhuǎn)義字符,比如’\r’,’\n’等,和C里面的表示是一樣的。動(dòng)作(action)則是在輸入被當(dāng)前規(guī)則識(shí)別出來時(shí)而執(zhí)行的。動(dòng)作實(shí)際上就是C的代碼,寫在{ }中。為了溝通詞法分析器和動(dòng)作,yacc引入了形式變量,以$開頭。如果
82、希望獲得詞法分析器和前面的動(dòng)作返回的值,我們可以使用$1,$2,…。$i表示一條規(guī)則右側(cè)第i個(gè)單元的值。比如有這樣的一條規(guī)則,</p><p> C的返回值為$2,D為$3。依此類推。</p><p> 程序段放一些其它的程序,也可以省略,連%%都可以不要。</p><p> 連接時(shí)需要指定連接庫,gcc的參數(shù)為-ly。</p><p>
83、;<b> .測(cè)試分析</b></p><p><b> 功能測(cè)試:</b></p><p><b> 圖2進(jìn)行加法運(yùn)算</b></p><p> 圖3表達(dá)式進(jìn)行減法運(yùn)算</p><p> 圖4表達(dá)式進(jìn)行乘法運(yùn)算</p><p> 圖5表達(dá)式
84、進(jìn)行除法運(yùn)算</p><p> 圖6表達(dá)式進(jìn)行四則運(yùn)算</p><p> 圖7表達(dá)式進(jìn)行括號(hào)優(yōu)先運(yùn)算</p><p><b> 課程總結(jié)</b></p><p> 本課程設(shè)計(jì)基于程序設(shè)計(jì)語言的編譯原理,給出了表達(dá)式計(jì)算器的設(shè)計(jì)過程,并在VC++6..0下將其進(jìn)行了實(shí)現(xiàn)。其中由于時(shí)間問題,在詞法分析與語義分析中分別
85、運(yùn)用了LEX和YACC工具。所以本課程設(shè)計(jì)的核心內(nèi)容在于語法分析階段,語法分析采用自上而下分析法,確定相關(guān)的文法產(chǎn)生式,確定FIRST和FOLLOW集合,對(duì)產(chǎn)生式進(jìn)行移近和規(guī)約,構(gòu)造ACTION和GOTO表,最后進(jìn)行代碼的編寫。</p><p> 通過本課程設(shè)計(jì)讓我深刻掌握了詞法分析、語法分析和語義分析等相關(guān)內(nèi)容。特別是能靈活的運(yùn)用LEX和YACC工具進(jìn)行詞法和語義分析。</p><p>
86、;<b> .參考文獻(xiàn)</b></p><p> [1] Alfred V.Aho, Ravi Sethi, Jeffrey D,Ullman著,李建中, 姜守旭等譯. 編譯原理[M]. 北京:機(jī)械工業(yè)出版社出版</p><p> [2] 陳火旺,劉春林, 譚慶平, 趙克佳, 劉越著. 程序設(shè)計(jì)語言編譯原理(第三版)[M]. 長(zhǎng)沙:國(guó)防工業(yè)出版社出版</p
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 編譯原理課程設(shè)計(jì)--表達(dá)式語法分析器
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告(二)表達(dá)式求值(計(jì)算器)
- 算術(shù)表達(dá)式的計(jì)算課程設(shè)計(jì)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)(表達(dá)式計(jì)算)
- 課程設(shè)計(jì)--表達(dá)式翻譯
- 編譯原理課程設(shè)計(jì)--算術(shù)表達(dá)式的語法分析及語義分析程序設(shè)計(jì)
- 算術(shù)表達(dá)式求值課程設(shè)計(jì)
- 課程設(shè)計(jì)--計(jì)算帶變量的數(shù)學(xué)表達(dá)式程序
- c++課程設(shè)計(jì)---中綴表達(dá)式轉(zhuǎn)后綴表達(dá)式的實(shí)現(xiàn)
- vc++課程設(shè)計(jì)《算術(shù)表達(dá)式》
- 課程設(shè)計(jì)報(bào)告-表達(dá)式類型的實(shí)現(xiàn)
- 微機(jī)原理簡(jiǎn)易計(jì)算器課程設(shè)計(jì)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)-表達(dá)式求值
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)--表達(dá)式求值
- 利用棧求表達(dá)式課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)---表達(dá)式求值
- 微機(jī)原理課程設(shè)計(jì)--簡(jiǎn)易計(jì)算器設(shè)計(jì)
- 數(shù)據(jù)結(jié)構(gòu)(表達(dá)式求值)課程設(shè)計(jì)
- 算術(shù)表達(dá)式求值演示-課程設(shè)計(jì)報(bào)告
- 算數(shù)表達(dá)式的求解課程設(shè)計(jì)報(bào)告
評(píng)論
0/150
提交評(píng)論