895191508Java課程設計報告_第1頁
895191508Java課程設計報告_第2頁
895191508Java課程設計報告_第3頁
895191508Java課程設計報告_第4頁
895191508Java課程設計報告_第5頁
已閱讀5頁,還剩24頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 湖湖 南南 農農 業(yè)業(yè) 大大 學學 java 課程設計報告課程設計報告 計算器軟件設計計算器軟件設計 學生姓名:學生姓名: 學學 號:號: 年級專業(yè):年級專業(yè): 指導老師:指導老師: 學學 院:院: 1 目目 錄錄 1. 前言前言2 2概要設計概要設計3 2.1 開發(fā)環(huán)境開發(fā)環(huán)境3 2.2 計算器功能計算器功能3 2.3 界面設計界面設計3 2.4 類類 uml 圖圖4 3. 詳細設計詳細設計4 3.1 使用的使用的 java 類的說明類的說明4 3.2 類的主要方法類的主要方法5 3.2.1 處理按了運算符后的計算處理按了運算符后的計算5 3.2.2 處理輸入字符處理輸入字符6 3.2.3

2、 進制的轉換進制的轉換6 3.2.4 設計總體認識設計總體認識7 3.2.5 程序流程圖程序流程圖8 4. 運行結果運行結果8 5. 測試分析測試分析9 5.1 程序運行情況程序運行情況9 5.2 程序異常處理程序異常處理9 6. 源程序源程序9 參考文獻參考文獻27 致致 謝謝27 2 摘要:摘要:該程序是一個圖形界面的簡單的 java 計算器,具有良好的界面,使 用人員能快捷簡單地進行操作。即時準確地獲得需要的計算的結果,充分降低 了數(shù)字計算的難度和節(jié)約了時間,對人們的生活有一定的幫助??梢赃M行簡單 的四則運算(加、減、乘、除,以及開平方)但僅限于十進制下,還可以進行 (八進制,十進制,十

3、六進制)之間的相互轉換,八進制最多可以輸入 19 位數(shù), 十進制最多可以輸入 18 位數(shù),十六進制最多可以輸入 14 位數(shù),backspace 表示 退格, clear 表示初始化,sqrt 表示開平方,界面為灰白對稱。 關鍵字:關鍵字:java、計算器類、方法、事件 1 前言前言 隨著科學技術的不斷發(fā)展,計算機已經成為我們工作學習和生活中不可缺 少的工具。文本編輯器是個人計算機最司空見慣的應用程序了,在學習了 java 語言之后,我決定使用 java 語言編寫一個簡單的計算器,可以實現(xiàn)簡單的運 算功能,滿足日?;镜墓ぷ鲗W習和娛樂需要。 java 是由 sun 公司開發(fā)的新一代純面向對象的網

4、絡編程語言。其目標是建 立一種在任意種機器、任一種操作系統(tǒng)的網絡環(huán)境中運行的軟件,實行所謂的 “程序寫一次,到處運行”的目標。正因為如此,java 已成為當今 internet 上最流行、最受歡迎的一種程序開發(fā)語言。 java 開發(fā)小組把 java 按特性分為基本版、移動版、企業(yè)版,每個版本有 一個軟件開發(fā)包。java 基本版本叫 java 2 標準版(java 2 standard edition,j2se),它包含建立 java 應用程序或者是 applet 所需的應用程序編程 接口(api) 。java 2 移動版(the java 2 mobile edition,j2me)包含創(chuàng)建

5、無線 java 應用程序的 api。還有 java 2 企業(yè)版(the java 2 enterprise,j2ee)是 j2se 的增強版本,包含建立多層架構應用程序 api。 java 語言是由 c+語言發(fā)展起而來的,是一種徹底的面向對象的程序設計 語言。作為一種純面向對象的程序設計語言,它非常適合大型軟件的開發(fā)。 java 語言去掉了 c+語言的一些容易引起錯誤的特性。java 語言的特點有:面 向對象、跨平臺、安全性、多線程和圖形功能強。 3 2 概要設計概要設計 2.1 開發(fā)環(huán)境開發(fā)環(huán)境 開發(fā)平臺:microsoft windows xp professional service p

6、ack 2 開發(fā)工具:jbuilder 2007 + jdk 1.6.0_02 2.2 計算器功能計算器功能 功能 1:按下數(shù)字鍵在液晶平上會顯示數(shù)字,這時計算器最基本的功能。 功能 2:在任何時候按下“”鍵,計算器文本框上的數(shù)字置反號。 功能 3:第一次按下“運算”鍵,再按下數(shù)字鍵,將重新輸入第二個數(shù)字。再次按下 “運 算”鍵,將算出前兩個數(shù)字運算的結果,然后按下數(shù)字,將又重新輸入新的數(shù)字。 功能 4:輸入數(shù)字后,按下“等于”鍵,將仍輸出原來的數(shù) 輸入運算符和第二個數(shù)字 后再按下“=”鍵,將得到二者運算的結果,然后又重復功能 3 和功能 4 。 功能 5:按下清除“c”鍵,數(shù)據(jù)被全部清楚。

7、2.32.3 界面設計界面設計 圖 2.3 計算器面板 4 2.4 類類 uml 圖圖 arraystackchar uml 圖如圖 2.3a 所示: arraystackdouble uml 圖如圖 2.3b 所示 圖 2.4a 圖 2.4b 3 詳細設計詳細設計 3.1 計算器使用的計算器使用的 java 類的說明類的說明 類名: this_number_too_big 作用: 自定義的異常類,用來處理計算結果溢出 繼承的父類: exception 類 實現(xiàn)的接口: 沒有 class this_number_too_big extends exception /自定義的一個結果溢出異常類

8、5 類名: jsp2003 作用: 主類。 繼承的父類: frame 類 實現(xiàn)的接口: itemlistener 類,actionlistener 類 class jsp2003 extends frame implements itemlistener,actionlistener public int number=0,length=18; /number 是用來記錄輸入的數(shù)字個數(shù), /length 是用來設置在不同進制下允許輸入的最多數(shù)字位數(shù),默認為十 進 制 public char mark=n; /設置運算符號為沒有即為n,它的值是+-*/ public double data=0;

9、 /設置運算數(shù)據(jù)為零 public char ch; /用來臨時存放所按按鈕的第一個字符 public boolean refresh=false; /設置 lab 是否要在輸入數(shù)據(jù)的時候刷新,初始為否 程序的設計參考了 sun java 網站里的大量實例,比如 layout 的使用、 event 的處理、components 的添加與應用等等。其中: public class newcalc extends jframe implements actionlistener 語句實現(xiàn)了 actionlistener 接口,因此可以調用 addactionlistener(this) 方法對按鈕

10、進行點擊監(jiān)聽,在下面的 public void actionperformed(actionevent e)方法里面對各個點擊事件進行處理。 3.2 類的主要方法 3.2.1 處理按了運算符后的計算: public void js() throws this_number_too_big if (mark=n) mark=ch; / data=double.parsedouble(lab.gettext(); refresh=true; else 6 switch (mark) case +: data+=double.parsedouble(lab.gettext(); break; cas

11、e -: data-=double.parsedouble(lab.gettext(); break; case *: data*=double.parsedouble(lab.gettext(); break; case /: data/=double.parsedouble(lab.gettext(); break; lab.settext(double.tostring(data); mark=ch; refresh=true; number=lab.gettext().length(); / system.out.println(lab.gettext(); if (datadoubl

12、e.max_value) throw new this_number_too_big(); 3.2.2 處理輸入字符: if(refresh=true) lab.settext(0); number=0; refresh=false; if(lab.gettext().charat(0)=0 number+; else if(numberlength) number+;lab.settext(lab.gettext()+ch); 3.2.3 八進制或十六進制轉換成十進制 i: public string goto_10(string s,long l) /參數(shù) s: 是要轉換的字符串,由于輸入

13、的控制,保證了字符串的合法 性; /參數(shù) l: 使用來設置是將 8 進制還是 16 進制轉換成 10 進制,它的有 7 效值為 8 或 16; string str=s; /用來轉換的字符串 long j=l; /表示進制 long lg=0,jing=1;/lg 用來記錄權乘和,jing 用來記錄位權 char cha;/臨時記錄要轉換的字符 for(int i=1;i=str.length();i+) cha=str.charat(str.length()-i); switch(cha) case 1: lg=lg+1*jing;break; case 2: lg=lg+2*jing;br

14、eak; case 3: lg=lg+3*jing;break; case 4: lg=lg+4*jing;break; case 5: lg=lg+5*jing;break; case 6: lg=lg+6*jing;break; case 7: lg=lg+7*jing;break; case 8: lg=lg+8*jing;break; case 9: lg=lg+9*jing;break; case a: lg=lg+10*jing;break; case b: lg=lg+11*jing;break; case c: lg=lg+12*jing;break; case d: lg=l

15、g+13*jing;break; case e: lg=lg+14*jing;break; case f: lg=lg+15*jing;break; jing*=j; /位權升一級,為下次使用做好準備 return long.tostring(lg); /end string goto_10() method 8 3.2.4 設計的總體認識 java 設計的摘要 java 設計的目錄結構 java 設計的概要和詳細設計 java 設計的版權意識 java 設計需要編譯的環(huán)境 java 設計的實用性 3.2.5 程序流程圖程序流程圖 計算結果顯示 接受用戶輸入 是否再 次計算 退出 是 否 處理

16、異常 圖 3 繪制計算器方法 pad 圖 開始 選擇你要計算運行的進制 10.8.16 十六進制八進制默認十進制 進制轉換 刷新 9 4 運行結果運行結果 圖 4 計算結果顯示 5 測試分析測試分析 5.1 程序運行情況程序運行情況: 程序正常的響應按鈕事件,輸入的數(shù)值長度受變量 length 的限定,進行混合四 則運算的時候,結果如果不是很大,可以正常顯示,但如果結果很大,就可能 采用科學記數(shù)方式,這樣帶來了進制轉換時的麻煩,需要特殊的處理科學記數(shù) 里的 e ,當結果太大的時候,有可能超出可能表示的最大值, (結果溢出) ,這 個時候就要對結果進行必要的異常處理,我在輸出結果的方法內設置 i

17、f 語句, 如果結果大于某一個值就拋出一個 this_number_too_big 類型的類,再使用 try-catch,捕捉輸出結果的方法拋出的異常對象。然后進行,重制歸零的處理。 5.2 程序異常處理程序異常處理: 當結果超出 double.max_value 時,將拋出一個 this_number_too_big 類 的異常對象,這個是我自定義的一個異常類它繼承自 exception 類,然后使 用 try-catch 去捕捉這個異常,異常的處理如下: try 10 js(); catch(this_number_too_big e) lab.settext(0); number=0;

18、mark=n; refresh=false; system.out.println(the number is too big); /如果出現(xiàn)異常則初始化效果如同 clear 鍵 6 6 程序清單:程序清單: import java.awt.*; import java.awt.event.*; class this_number_too_big extends exception / 自定義的一個結果溢出異常類 / actionlintsner 是所有監(jiān)聽器的父類,其它監(jiān)聽器可以監(jiān)聽的事件都可以被 它捕獲 / itemlistener 用于捕獲帶有 item 的組件產生的事件,如 combo

19、box,checkbox,radiobutton,togglebutton class hejiang extends frame implements itemlistener, actionlistener public hejiang() addwindowlistener(new windowadapter() public void windowclosing(windowevent e) dispose(); system.exit(0); / 給窗口注冊一個事件監(jiān)聽器,當你點了窗口右上方的叉號時, 此方法被調用 ); static hejiang mainframe = new

20、hejiang(); / 創(chuàng)建一個 mainframe static label lab1 = new label(0); static label lab = new label(0); static panel pnl1 = new panel(new gridlayout(4, 3, 3, 3); / 創(chuàng)建新 的面板.布局管理 11 static panel pnl2 = new panel(new gridlayout(4, 1, 3, 3); static panel pnl3 = new panel(new gridlayout(1, 2, 3, 3); static panel

21、pnl4 = new panel(new gridlayout(6, 1, 3, 3); static button bt9 = new button(9); static button bt8 = new button(8); static button bt7 = new button(7); static button bt6 = new button(6); static button bt5 = new button(5); static button bt4 = new button(4); static button bt3 = new button(3); static but

22、ton bt2 = new button(2); static button bt1 = new button(1); static button bt0 = new button(0); static button btdot = new button(.); static button btequ = new button(=); static button btadd = new button(+); static button btsub = new button(-); static button btmul = new button(*); static button btdev

23、= new button(/); static button bta = new button(a); static button btb = new button(b); static button btc = new button(c); static button btd = new button(d); static button bte = new button(e); static button btf = new button(f); static checkbox ckb8 = new checkbox(八進制); static checkbox ckb10 = new che

24、ckbox(十進制); static checkbox ckb16 = new checkbox(十六進制); static button btc = new button(clear); static button btt = new button(backspace); public int number = 0, length = 18; / number 是用來記錄輸入的數(shù)字個數(shù),length 是用來設置在不同進制下允許 輸入的最多數(shù)字位數(shù),默認為十進制 public char mark = n; / 設置運算符號為沒有即為n ,它的值是 + - * / public double d

25、ata = 0; / 設置運算數(shù)據(jù)為零 public char ch; / 用來臨時存放所按按鈕的第一個字符 public boolean refresh = false;/ 設置 lab 是否要在輸入數(shù)據(jù)的時候刷新, 初始為否 public static void main(string args) system.out.println(starting hejiang.); lab.setalignment(label.right); / 對齊方式 lab.setbackground(color.lightgray); / 背景色 12 lab.setforeground(color.bl

26、ue); / 前景色 lab.setfont(new font(serief, font.bold, 18);/ 字體設置 lab.setbounds(14, 33, 216, 40); lab1.setalignment(label.right); / 對齊方式 lab1.setbackground(color.lightgray); / 背景色 lab1.setforeground(color.blue); / 前景色 lab1.setfont(new font(serief, font.bold, 18);/ 字體設置 lab1.setbounds(14, 75, 216, 40); m

27、ainframe.add(lab); mainframe.add(lab1); checkboxgroup grp = new checkboxgroup(); ckb8.setcheckboxgroup(grp); ckb10.setcheckboxgroup(grp); ckb16.setcheckboxgroup(grp); ckb8.setbounds(14, 115, 55, 25); / setbounds()方法是可以設定 控件的大小和位置 ckb10.setbounds(69, 115, 55, 25); ckb16.setbounds(124, 115, 65, 25); c

28、kb8.setstate(false); ckb10.setstate(true); ckb16.setstate(false); mainframe.add(ckb8); mainframe.add(ckb10); mainframe.add(ckb16); pnl1.setbounds(18, 180, 120, 150); pnl2.setbounds(144, 180, 40, 150); pnl3.setbounds(14, 140, 170, 36); pnl4.setbounds(190, 140, 40, 190); pnl1.add(bt7); pnl1.add(bt8);

29、pnl1.add(bt9); pnl1.add(bt4); pnl1.add(bt5); pnl1.add(bt6); pnl1.add(bt1); pnl1.add(bt2); pnl1.add(bt3); pnl1.add(bt0); pnl1.add(btdot); pnl1.add(btequ); pnl2.add(btadd); pnl2.add(btsub); pnl2.add(btmul); pnl2.add(btdev); 13 pnl3.add(btt); pnl3.add(btc); pnl4.add(bta); pnl4.add(btb); pnl4.add(btc);

30、pnl4.add(btd); pnl4.add(bte); pnl4.add(btf); bta.enable(false); btb.enable(false); btc.enable(false); btd.enable(false); bte.enable(false); btf.enable(false); mainframe.add(pnl1); mainframe.add(pnl2); mainframe.add(pnl3); mainframe.add(pnl4); mainframe.setresizable(false); / 窗口可以最小化和關閉,但是不 能被任意改變大小

31、mainframe.setlayout(null); mainframe.setsize(240, 350); mainframe.settitle(小型計算器); mainframe.setvisible(true); / 組件可見 ckb8.additemlistener(mainframe); ckb10.additemlistener(mainframe); ckb16.additemlistener(mainframe); / 把事件聆聽者向各個組鍵注冊 bt1.addactionlistener(mainframe); bt2.addactionlistener(mainframe

32、); bt3.addactionlistener(mainframe); bt4.addactionlistener(mainframe); bt5.addactionlistener(mainframe); bt6.addactionlistener(mainframe); bt7.addactionlistener(mainframe); bt8.addactionlistener(mainframe); bt9.addactionlistener(mainframe); bt0.addactionlistener(mainframe); btadd.addactionlistener(m

33、ainframe); btsub.addactionlistener(mainframe); btmul.addactionlistener(mainframe); btdev.addactionlistener(mainframe); btt.addactionlistener(mainframe); btc.addactionlistener(mainframe); 14 btdot.addactionlistener(mainframe); btequ.addactionlistener(mainframe); bta.addactionlistener(mainframe); btb.

34、addactionlistener(mainframe); btc.addactionlistener(mainframe); btd.addactionlistener(mainframe); bte.addactionlistener(mainframe); btf.addactionlistener(mainframe); / end main() mothed / checkbox 事件的處理 public void itemstatechanged(itemevent e) mark = n; refresh = false; / 規(guī)定當進制轉換時以前輸入的運算符失效 if (ckb

35、8.getstate() = true) bta.enable(false); btb.enable(false); btc.enable(false); btd.enable(false); bte.enable(false); btf.enable(false); bt9.enable(false); bt8.enable(false); btdot.enable(false); btadd.enable(false); btmul.enable(false); btsub.enable(false); btdev.enable(false); btequ.enable(false); /

36、 在八進制的情況下對有些按件的管理 if (length = 18) lab.settext(goto10_8(lab.gettext(); number = lab.gettext().length(); if (length = 14) lab.settext(goto_10(lab.gettext(), 16l); lab.settext(goto10_8(lab.gettext(); number = lab.gettext().length(); / 將其他進制轉換成八進制 length = 19; / 在八進制下允許輸入數(shù)字個數(shù)最多為 19 位 15 if (ckb10.getst

37、ate() = true) bta.enable(false); btb.enable(false); btc.enable(false); btd.enable(false); bte.enable(false); btf.enable(false); bt9.enable(true); bt8.enable(true); btdot.enable(true); btadd.enable(true); btmul.enable(true); btsub.enable(true); btdev.enable(true); btequ.enable(true); / 在十進制的情況下對有些控件的

38、管理 if (length = 19) lab.settext(goto_10(lab.gettext(), 8l); number = lab.gettext().length(); if (length = 14) lab.settext(goto_10(lab.gettext(), 16l); number = lab.gettext().length(); if (length = 19) lab1.settext(goto_10(lab1.gettext(), 8l); number = lab1.gettext().length(); if (length = 14) lab1.s

39、ettext(goto_10(lab1.gettext(), 16l); number = lab1.gettext().length(); length = 18; if (ckb16.getstate() = true) bta.enable(true); btb.enable(true); btc.enable(true); btd.enable(true); bte.enable(true); btf.enable(true); bt9.enable(true); bt8.enable(true); btdot.enable(false); 16 btadd.enable(false)

40、; btmul.enable(false); btsub.enable(false); btdev.enable(false); btequ.enable(false); / 在十六進制的情況下對有些按件的管理 if (length = 18) lab.settext(goto10_16(lab.gettext(); number = lab.gettext().length(); if (length = 19) lab.settext(goto_10(lab.gettext(), 8l); lab.settext(goto10_16(lab.gettext(); number = lab.

41、gettext().length(); / 將其他進制轉換成十六進制 length = 14; / 在十六進制下允許輸入數(shù)字個數(shù)最多為 14 位 / end itemstatechanged(itemevent e) method / 按鈕事件的處理 public void actionperformed(actionevent m) / 鼠標點激就觸發(fā)事件監(jiān) 聽 button btn = (button) m.getsource(); ch = btn.getlabel().charat(0); deposit(ch); switch (ch) case c: lab.settext(0);

42、 number = 0; mark = n; refresh = false; break;/ 初始化 case 1: enter(); break; case 2: enter(); break; case 3: enter(); 17 break; case 4: enter(); break; case 5: enter(); break; case 6: enter(); break; case 7: enter(); break; case 8: enter(); break; case 9: enter(); break; case 0: if (refresh = true) l

43、ab.settext(0); number = 0; refresh = false; if (lab.gettext().charat(0) = 0 if (number length) number+; lab.settext(lab.gettext() + ch); else break; break; case a: enter(); break; case b: enter(); break; case c: enter(); break; 18 case d: enter(); break; case e: enter(); break; case f: enter(); brea

44、k; case .: if (refresh = true) lab.settext(0); number = 0; refresh = false; if (lab.gettext().indexof(.) = -1) number+; lab.settext(lab.gettext() + ch); else break; break; case b: if (number = 0) break; else if (-number = 0) lab.settext(0); number = 0; else if (number != 1) lab.settext(lab.gettext()

45、.substring(0, number); else lab .settext(character.tostring(lab.gettext() .charat(0); break; case +: try js(); catch (this_number_too_big e) 19 lab.settext(0); number = 0; mark = n; refresh = false; system.out.println(the number is too big); break; / 如果出現(xiàn)異常則初始化效果如同 clear 鍵 case -: try js(); catch (t

46、his_number_too_big e) lab.settext(0); number = 0; mark = n; refresh = false; system.out.println(the number is too big); break; / 如果出現(xiàn)異常則初始化效果如同 clear 鍵 case *: try js(); catch (this_number_too_big e) lab.settext(0); number = 0; mark = n; refresh = false; system.out.println(the number is too big); br

47、eak; / 如果出現(xiàn)異常則初始化效果如同 clear 鍵 case /: try js(); catch (this_number_too_big e) lab.settext(0); number = 0; mark = n; refresh = false; system.out.println(the number is too big); break; / 如果出現(xiàn)異常則初始化效果如同 clear 鍵 20 case =: try js(); catch (this_number_too_big e) lab.settext(0); number = 0; mark = n; ref

48、resh = false; system.out.println(the number is too big); break; / 如果出現(xiàn)異常則初始化效果如同 clear 鍵 / end actionperformed(actionevent e) method / 八進制或十六進制轉換成十進制 i public string goto_10(string s, long l) / 參數(shù) s: 是要轉換的字符串,由于輸入的控制,保證了字符串的合法性; / 參數(shù) l: 使用來設置是將 8 進制還是 16 進制轉換成 10 進制,它的有效值 為 8 或 16; string str = s; /

49、 用來轉換的字符串 long j = l; / 表示進制 long lg = 0, jing = 1;/ lg 用來記錄權乘和,jing 用來記錄位權 char cha;/ 臨時記錄要轉換的字符 for (int i = 1; i = 16) ch = lg % 16; k = (int) ch; switch (k) case 10: st = a + st; break; case 11: st = b + st; break; case 12: st = c + st; break; case 13: st = d + st; break; case 14: st = e + st; b

50、reak; case 15: st = f + st; break; default: st = long.tostring(ch) + st; lg = lg / 16; k = (int) lg; switch (k) case 10: st = a + st; break; case 11: st = b + st; 23 break; case 12: st = c + st; break; case 13: st = d + st; break; case 14: st = e + st; break; case 15: st = f + st; break; default: st

51、 = long.tostring(lg) + st; return st; / end goto10_16() method / 十進制轉換成八進制? public string goto10_8(string s) / 參數(shù) s: 是要轉換的字符串,由于輸入的控制,保證了字符串的合法性; string str = s; if (str.charat(0) = -) / 如果有負號則出去負號 str = str.substring(1, str.length() - 1); if (str.indexof(e) != -1)/ 如果是科學計數(shù)值則出去小數(shù)點和 e 后面的數(shù) str = str.

52、charat(0) + str.substring(2, str.indexof(e); if (str.indexof(.) != -1)/ 如果有小數(shù)點則出去小數(shù)點及小數(shù)點 后面的內容 str = str.substring(0, str.indexof(.); lg = long.parselong(str); while (lg = j) ch = lg % j; st = long.tostring(ch) + st; lg = lg / j; st = long.tostring(lg) + st; return st; / end goto10_8() method / 輸入字符 public void enter() if (refresh = true) 24 / 如果已經設置了 運算符則在下一次輸入數(shù)據(jù)的時候要把以前 lab 的 內容清除掉 lab.settext(0); number = 0; refresh = false; if (lab.gettext().charat(0) = 0 number+; else if (number double.max_value) / 如果 data 超過 double 類型的最大值則拋出自定義的一個異常 類 throw new this_number_too_big(); / end js() method

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論