龜兔賽跑程序設計報告全解_第1頁
龜兔賽跑程序設計報告全解_第2頁
龜兔賽跑程序設計報告全解_第3頁
龜兔賽跑程序設計報告全解_第4頁
龜兔賽跑程序設計報告全解_第5頁
已閱讀5頁,還剩15頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、目錄前言 1工程概況 12.1 項目所用的時間 12.2 項目負責人 12.3 項目指導人 1正文 13.1 設計的目的和意義 13.2 目標與總體方案 23.3 設計方法和內容 23.3.1 開發環境 23.3.2 設計方法 23.3.4 設計體會 83.4 設計創新與關鍵技術 83.4.1 設計創新 83.4.2 關鍵技術 93.5 結論 9致謝 9參考文獻 10附錄 11刖百在科技日新月異的今天,電腦成為人的生活中不可缺少的一部分。作為計算機專業的學生,應該充分 利用所學知識,把實際問題轉移到電腦上去,通過電腦的編程,使復雜問題簡單化,深奧問題淺顯化,抽 象問題具體化。在學過Java程序

2、設計語言后,我們對計算機有了更深的了解。Java是一種簡單的,跨平臺的,面向對象的,分布式的,解釋的,健壯的安全的,結構的中立的,可移植的,性能很優異的多線程的,動態的語言。當1995年SUNB出Java語言之后,全世界的目光都被這個神奇的語言所吸引。Java不同于一般的編譯執行計算機語言和解釋執行計算機語言。它首先將源代碼編譯成二進制字節碼(bytecode),然后依賴各種不同平臺上的虛擬機來解釋執行字節碼,從而實現了 “一次編譯、到處執行” 的跨平臺特性。本次課設我選擇的是龜兔賽跑游戲的制作。這個游戲實際上主要是對我們JAVA學習中的線程部分的考察,尤其是多線程的定義,運行等。同時還要保證

3、游戲有一個真實的操作界面和人性化操作設計。在設計龜兔賽跑這個游戲中我也遇到了技術上的一些困難,但通過查閱資料,并且在老師的幫助下最 終問題得以解決。正如龜兔賽跑這個故事一樣,雖然我們在技術上不是很優秀,但只要有烏龜一樣堅持不 懈的精神,最終勝利到達終點。工程概況2.1 項目所用的時間從這個項目開始到結束總共歷時12天。完成于2015年6月19日。2.2 項目負責人孫肖肖,女,計算機科學與技術17-4,學生。2.3 項目指導人高賢強,男,信息工程學院教師,講師。正文3.1設計的目的和意義本設計要求學生開發一個龜兔賽跑游戲,主要是對學生多線程編程、游戲方案設計、游戲背景及動漫 制作等能力進行培養鍛

4、煉,同時還要求保證游戲有一個真實的操作界面和人性化操作設計。此外,學生通 過該題目的設計過程,可以初步應用軟件系統的開發原理和開發方法,全面培養軟件開發過程中的分析、 設計、編碼、測試及文檔規范書寫的能力,得到軟件工程的訓練,提高解決實際問題的能力。( 1 )有助于加深我們對Java 程序設計這門課程的理解,我們在課堂上學的都是基礎理論知識,對于如何用程序語言來描述所學知識還是有一定的難度。通過課程設計,我們可以真正理解其內涵。( 2 )有利于我們邏輯思維的鍛煉,程序設計能直接有效地訓練學生的創新思維、培養分析問題、解決問題的能力。即使是一個簡單的程序,依然需要學生有條不紊的構思。( 3 )有

5、利于培養嚴謹認真的學習態度,在程序設計的過程中,當我們輸入程序代碼的時候,如果不夠認真細心,那么就可能導致語法錯誤,從而無法得出運行結果。那么,這個我們反復調試,反復修改的過程,其實也是對我們認真嚴謹治學的一個鍛煉。3.2 目標與總體方案( 1 )用圖形用戶界面實現游戲界面,同時通過設置布局,背景,字體等來豐富界面,最大程度的模擬龜兔賽跑的場景。( 2 )能設置比賽時間,龜兔的數量等等,實現對比賽中龜兔的數量,比賽時間等參數的設置。( 3 )在任意時間段內龜兔的速度是隨機的,為了模擬龜兔賽跑結果的不確定性,在游戲開始后烏龜和兔子的速度都是通過隨機函數產生的,保證兔子比烏龜速度要快,兔子在賽跑途

6、中看到烏龜落后下會偷懶睡覺的前提下給予烏龜, 兔子以隨機的速度, 從而使得游戲的結果不確定, 給用戶更多的游戲的真實感。( 4 )開始比賽之后以動畫顯示賽跑過程,用戶進入游戲界面后,先選擇游戲模式,然后單擊開始按鈕,烏龜和兔子將會以隨機的速度開始朝終點線爬行,通過重復刷新技術達到動畫效果,給用戶更逼真的感官。( 5 )系統的開發可以采用Java 語言來實現;( 6 )在基本要求達到后,可進行創新設計,如改善算法性能、友好的人機界面。3.3 設計方法和內容3.3.1 開發環境硬件環境:一臺清華同方電腦,其配置為: CPU: Intel(R) Core(TM) i5-4570 3.2GHz 內存:

7、 4G 硬盤: 500G 主板: 4260LA-2922P軟 件 環 境 : Windows 7 旗 艦 版 版 本 2009 Service Pack 1 , 并 且 安 裝 了 可 供 編 程 的 eclipse-standard-kepler-SR1-win323.3.2 設計方法賽跑的過程是兩個比賽對象并行前進的過程,考慮到應用需求,我們可以利用多線程技術,所謂多線程就是指同時存在幾個執行體,按幾條不同的執行線索共同工作的情況, 這與要求剛好吻合, Java 語言對 多線程提供強大的支持。用直觀圖形描述龜兔賽跑前進過程:每過一秒,兔子走過的文本框中增加三個“# ”號,烏龜走過的路程文本

8、框中增加一個“# ”號。跑完路程結束線程,并顯示各自跑完全程總共用的時間。3.3.3 主體內容一、設計分析第一步:設計良好游戲界面功能:實現基本的開始、退出游戲功能、選擇游戲模式等。基本步驟:huttoii烏他株簽兔子續選擇裔提示模式信息呈現用于選擇不同的比一 模式退出按鈕圖3.3.3.1 基本步驟1在實現過程中會遇到的問題及解決方案:1、背景面板上加載圖片時需要重寫 paintComponent方法2、布局必須合理設置 (GridLayout不能改變組件的具體位置但可以縮放時相對位置不變。FlowLayout默認是占滿第一行轉向第二行,并且放大時相對位置改變。 Null布局可以自由布置組件位

9、置和大小, 但不 易實現窗口放大時相對大小隨之變化。 )若設置不合理,就可能出現多種錯誤。歹U如:無法插入背景圖片, 組建不能顯現,組件位置與設計不符等等。3、添加背景面板監聽重置各面板位置才能實現窗口放大時的相對位置不變第二步:線程類的設計功能:實現多只烏龜,兔子的多線程運行具體步驟:圖3.3.3.2 基本步驟2第二步會遇到的問題及解決方案:1、建立兔子線程,繼承接口 Runnable并正確的實現run()方法。同時要特別注意兔子在比賽中還要 模擬睡覺的動作。2、建立烏龜線程,繼承接口 Runnable并實現其run()方法,要與兔子多線程運行;3、為了實現可選擇多只龜兔進行賽跑,要實現多個

10、兔子,烏龜線程,并能并發運行。4、游戲中提供了模式選擇的功能,通過建立ItemSelect類來建立不同的游戲模式。二、各模塊的功能及程序說明龜兔賽跑程序主要由以下幾個模塊構成:模塊一:初始圖形界面模塊public class RRTT extends Applet implements ActionListener Graphics g;Panel panel;Label label1,label2,label3;Button button1,button2;RabTor1 rabTor1;public void init()/Applet中的初始化函數有類中構造函數的作用!最先調用! pan

11、el=new Panel();panel.setLayout(new FlowLayout();label1=new Label("歡迎使用該軟件,1.0版本,不足之處,請多多指教! ");label2=new Label("*東瑞制作* 程序員* 陳杰 *) label3=new Label();button1=new Button("進入游戲");button2=new Button("退出游戲");button1.addActionListener(this);button2.addActionListener(thi

12、s);setLayout(new BorderLayout();panel.add(button1);panel.add(label3);panel.add(button2);add(label1,BorderLayout.NORTH);add(label2,BorderLayout.SOUTH);add(panel,BorderLayout.CENTER);public void actionPerformed(ActionEvent e)if(e.getSource()=button1) rabTor1=new RabTor1();/dispose();else if(e.getSourc

13、e()=button2) System.exit(0);該模塊主要是用來提供進入該程序游戲的初始圖形用戶界面,顯示該程序的基本信息,提示用戶進行操作。模塊二:兔子線程模塊該模塊主要是實現兔子運行線程,類 RabbitThread 繼承了接口 Runnable 并實現其方法run() ,主要有兩個功能的實現:1. 來為兔子定義隨機速度x1=x1+(int)(Math.random()*30);2. 兔子動的實現方法if(threadName.equals("rabbit")&&x1<=800)int t1=0,t2=0;str1="rabbit

14、"x1=x1+(int)(Math.random()*30);rab_time=rab_time+1;rab_road+=(int)(Math.random()*25);3. 兔子獲得一個隨機的時間睡眠(0 30 秒 )str1=" 烏龜跑這么慢,我先睡一會 "str2=" 哼,別以為自己是兔子就了不起!你就睡吧! "rabbit = getImage( getCodeBase(),"4.jpg");try t1=(int)(Math.random()*30000);Thread.currentThread().sleep(

15、t1);catch (InterruptedException e)模塊三:烏龜線程模塊該模塊主要是實現烏龜運行線程,類 TortoiseThread 繼承了接口 Runnable 并實現其方法run() ,主要功能的實現:烏龜移動實現的方法 !else if(threadName.equals("tortoise")&&x2<=600)x2+=(int)(Math.random()*20);tor_road+=(int)(Math.random()*20);tor_time=tor_time+1;if(x2>140&&x2<

16、;240) str2="tortoise" if(x2>255&&x2<=480) str2="tortoise" if(x2>480&&x1<580) str2=" 就快到終點了,我要堅持下去,堅持就是勝利! "通過隨機函數實現烏龜隨機速度爬行。模塊四:畫布界面的設置與布局class Imagecanvas extends CanvasToolkit tool;Image image1;Imagecanvas() setSize(800,500);tool=getToolkit

17、();image1=tool.getImage("6.gif");public void paint(Graphics g) g.drawImage(image1,10,10,image1.getWidth(this),image1.getHeight(this),this);public Image getImage() return image1;三、操作方法及試驗結果:(兔子領先)(第一局比賽開始)(兔子勝利)(第二局比賽開始)(兔子中途睡覺)(烏龜反超兔子,最終勝利)3.3.4設計體會本系統是一個基于多線程模式的龜兔賽跑小游戲,系統的規模很有限,功能實現也相對簡單,

18、但 作為一個完整的系統,在整個過程中我還是學到了不少的知識,也對 java語言有了較深的體會。通過本次課設試驗,我對java的熟練程度得到了很大的提升,對包括多線程在內的java語言高級技術掌握的也更加熟練了,更對面向對象的分析思想,面向對象的設計方法有了直觀的體會。同時,在游戲 的制作過程中要用到很多課本上并未介紹到的知識,例如多線程隊列事件等等,通過網絡學習和與老師同 學的交流使得自己對該部分的知識有了更廣泛更深刻的體會。當然本次課設,通過我不斷的嘗試,不斷的 修改錯誤,解決問題,終于明白了程序員生活中天堂與地獄的感覺是什么了。雖然這個過程很苦,但我對 java的熟練程度得到了很大的提升。

19、同時,在游戲的制作過程中要用到很多課本上并未介紹到的知識,如 當我遇到如何在一個 Japplet類中創建另外一個 Applet類的對象并運行線程的問題時,我糾結了很久沒 能找到解決辦法,最終通過上網百度,不斷嘗試,不斷錯,在不斷改,終于解決了。通過網絡學習使得自 己對該部分的知識有了更廣泛更深刻的體會。這次的課程設計時間有點短,僅有二周的時間。在調試過程 中屢調屢敗的狀態下,老師給了我熱情的幫助,老師指導我們調試程序,說哪些是錯的,哪些是多余的, 哪些是必要的,一個雜亂無章的程序被修改得有條不紊,很顯然結果也是最最正確的。本次系統的功能相對還比較單一,只能選擇兩種游戲模式,并且游戲也相對單調,

20、缺乏趣味性,離一 個真正的游戲軟件還相差很遠,以后如有時間,可以考慮去做一個真正的游戲軟件。3.4 設計創新與關鍵技術3.4.1 設計創新1、用圖形用戶界面實現游戲界面;通過使用 java 中 Jlabel , Jbutton , JtextArea , JcomboBox 等 swing 組件來實現圖形用戶界面,同時通過設置布局,背景,字體等來豐富界面,最大程度的模擬龜兔賽跑的場景。2、能設置比賽時間,龜兔的數量等等。通過組合框組件的使用以及事件的訂閱來實現用戶對不同游戲模式的選擇,在本程序中只是簡單的設計了兩種游戲模式供用戶選擇,也一定程度上實現了對比賽中龜兔的數量,比賽時間等參數的設置。

21、3、在任意時間段內龜兔的速度是隨機的。為了模擬龜兔賽跑結果的不確定性, 在游戲開始后烏龜和兔子的速度都是通過隨機函數產生的, 當然,我們會在保證兔子比烏龜速度要快,兔子在賽跑途中看到烏龜落后下會偷懶睡覺的前提下給予烏龜,兔子以隨機的速度,從而使得游戲的結果不確定,給用戶更多的游戲的真實感。4、開始比賽之后以動畫顯示賽跑過程。用戶進入游戲界面后,先選擇游戲模式,然后單擊開始按鈕,烏龜和兔子將會以隨機的速度開始朝終點線爬行,通過java 中重復刷新技術達到動畫效果,給用戶更逼真的感官。3.4.2 關鍵技術游戲中提供了模式選擇的功能,通過建立ItemSelect 類來建立不同的游戲模式。 建立兔子和

22、烏龜線程,繼承接口 Runnable 并正確的實現run() 方法。3.5 結論程序的語法錯誤很容易查找和修改,但找出了語法錯誤并不代表程序已經完成。很多編譯錯誤是由于函數名或變量名等程序對象的拼寫錯誤引起的。 在編寫程序的過程中, 需要認真仔細, 以免出現拼寫錯誤,增加調試程序的工序, 浪費不必要的時間和精力。 在這個過程中, 我收獲頗多, 不僅理論知識掌握的更牢,實際動手能力也有所提高,再次讓我感受到 Java 語言強大的功能,更激發了我Java 語言的興趣。如果說以前的編程僅僅是按照課本的要求進行的,那這個課程設計難度就提高了一個級別,它讓們將所知道的知識聯系到了一起,更加顯示了程序的強

23、大。致謝首先我要感謝我的老師在課程設計上給予我們的指導和提供給我們的支持和幫助,這是我們能順利完成這次課程設計的主要原因,更重要的是老師幫我解決了許多技術上的難題,讓我們能把程序做得更加完善。在此期間,我不僅學到了許多新的知識,而且也開闊了視野,提高了自己的設計能力。其次,我要感謝曾經幫助過我的同學, 他們也為我解決了不少我不太明白的設計語言,和一些細節上的差錯。本次設計是在高賢強老師的悉心指導下完成的,老師淵博的知識,嚴謹的治學態度,一絲不茍的工作作風,平易近人的性格都是我們學習的楷模。在論文的整理期間,高老師給了我們很多的意見和指導,才使得論文得以順利的完成。最后再一次感謝所有在設計中曾經

24、幫助過我的良師益友和同學。在此,我誠心的對所有幫助過我的老師同學們說一句:謝謝!參考文獻1 丁振凡 Java 語言使用教程 . 北京郵件大學出版社, 2006.92 丁振凡 Java 語言使用教程實驗指導 . 北京郵件大學出版社, 2006.93 Bruce Eckel Java 編程思想 . 機械工業出版社2007.64耿祥義JAVA2實用教程.清華大學出版社 2009.55 陳國君 java 程序設計基礎(第二版) 清華大學出版社6 劉藝,吳英 Java 程序設計大學教程 M 北京:科學出版社, 2005 年7 趙文靖 . Java 程序設計基礎與上機指導 . 北京:清華大學出版社, 20

25、06 年 .8 吳其慶 . Java 程序設計實例教程 . 北京:冶金工業出版社, 2006 年 .9 耿祥義,張躍平 Java 基礎教程(第2 版) M 北京:清華大學出版社, 2007 年10 美Bruce Eckel. Thinking In Java. 英文第4版.北京:機械工業出版社,200711 楊昭編著 . 二級 Java 語言程序設計教程. 北京:中國水利水電出版社, 200612 趙文靖編著.Java 程序設計基礎與上機指導 . 北京:清華大學出版社, 200613 張海藩 . 軟件工程導論( 第四、五版)M. 北京 : 清華大學出版社,2008.14Cay S and Ga

26、ry C. Java2 核心技術 (卷 1: 基礎知識 )M. 機械工業出版社 ,2003.15 鄧光偉 , 李阿午 , 朱志 .Java2 核心技術 (卷 2: 高級特性 )M. 機械工業出版社 ,2000.16Watson K,NagelC,齊立波.C#入門經典M.清華大學出版社,2002.17張廣彬,孟紅蕊,張永寶.C+課程設計案例精編M.清華大學出版社,2005.18朱喜福.C+程序設計M.人民郵電出版社,2005.19宛延闿.實用C+和序設af教程M.機械工業出版社,2006.附錄源程序package sxx;import java.awt.Color;import java.awt

27、.Graphics;import java.awt.Image;import javax.swing.JApplet;import java.awt.*;import java.awt.event.*;import java.util.Arrays;import java.lang.*;import java.applet.Applet;import java.applet.AudioClip;import .URL;SuppressWarnings( "unused", "serial" )class Imagecanvas extends Canva

28、sToolkit tool;Image image1;Imagecanvas() setSize(800,500);tool=getToolkit();image1=tool.getImage("6.gif");public void paint(Graphics g)g.drawImage(image1,10,10,image1.getWidth(this),image1.getHeight(this),this);public Image getImage() return image1;/*public class frame extends Frame implem

29、ents ActionListenerPanel panel;Label label1,label2,label3;Button button1,button2;RabTor1 rabTor1;frame()panel=new Panel(); panel.setLayout(new FlowLayout();label1=new Label(" 歡迎使用該軟件,1.0 版本,不足之處,請多多指教! ");label2=new Label("* 東瑞制作 * 程序員 * 孫肖肖 *");label3=new Label();button1=new But

30、ton("進入游戲");button2=new Button("退出游戲");button1.addActionListener(this);button2.addActionListener(this);/label1.setText(" 歡迎使用該軟件,1.0 版本,不足之處,請多多指教! ");/label2.setText("* 東瑞制作 * 程序員 * 孫肖肖 *");setLayout(new BorderLayout();panel.add(button1);panel.add(label3);pan

31、el.add(button2);add(label1,BorderLayout.NORTH);add(label2,BorderLayout.SOUTH);add(panel,BorderLayout.CENTER);addWindowListener(new WindowAdapter()public void WindowClosing(WindowEvent e) System.exit(0););setBounds(300,200,300,200);setVisible(true);validate();public void actionPerformed(ActionEvent e

32、)if(e.getSource()=button2) rabTor1=new RabTor1();*/package sxx;import java.applet.AudioClip;import java.awt.Color;import java.awt.Graphics;import java.awt.Image;import .URL;import javax.swing.JApplet;SuppressWarnings("serial")public class RabTor1 extends JApplet implements Runnable Graphic

33、s g;int i=1;Image backpic,rabbit,tortoise,zhongdian,tortoise2,rabbit2;int x1=0,y1=80,j=0;int x2=0,y2=180;/ 圖片的位移!int rab_road=0,tor_road=0;/ 圖片跑的路程!double rab_time=0.0,tor_time=0.0;/ 圖片移動用的時間String str1="rabbit",str2="tortoise"/給字符串付初值! setSize(800,400);/為什么沒用?public void init()/

34、Applet 中的初始化函數有類中構造函數的作用 ! 最先調用backpic = getImage(getCodeBase(), " rabbit = getImage( getCodeBase()," tortoise = getImage(getCodeBase(), " zhongdian = getImage(getCodeBase(), " tortoise2 = getImage(getCodeBase()," rabbit2=getImage(getCodeBase()," /rabbit3=getImage(getBa

35、se(),"3.jpg");public void paint(Graphics g)/ this.g=g;起跑 .jpg");/ 將圖片對象與圖片 綁定 !兔子 .gif");烏龜 .jpg");烏龜贏了 .png");小烏龜 .jpg");兔子在前 .jpg");此函數第四個調用 !setSize(760,360);if(i=1) g.drawImage(backpic, 0, 0, 800, 600, this);g.setColor(Color.green);g.fillRect(0, 0, 1600, 8

36、00);/填充矩形g.setColor(Color.red);g.drawString("-背景音樂孫肖肖制作 ",30,30);g.drawLine(0,75,600,75);/畫跑道g.drawLine(0,160,600,160);g.drawLine(0,260,600,260);g.drawLine(603,80,603,300);g.drawRoundRect(0,10,680,300,60,60);/ 圓角矩形g.setColor(Color.black);g.drawImage(rabbit, x1, y1, 60, 60, this);g.drawStri

37、ng(str1, x1, y1+80);g.drawImage(tortoise, x2, y2, 60, 60, this);g.drawString(str2, x2, y2+80);g.drawImage(zhongdian, 600, 0, 60, 80, this);else if(i=2)g.drawImage(tortoise2, 600, 180, 60, 60, this);/*else if(i=3) int x3=245,y3=80;g.drawImage(rabbit2,600,80,60,60,this); else int x4=490,y4=80;g.drawIm

38、age(rabbit2,x4,y4,60,60,this);*/System.out.println(j);public void update(Graphics g)/用不到!public void start()/此函數第二個調用 !Thread rab = new Thread(this, "rabbit");/創建一個兔子線程,this 表示在這個類中找 .rabbit 是線程的名子.Thread tor = new Thread(this, "tortoise");rab.start();/線程對象調用 start() 方法 ! 然后調用對應的

39、 run() 方法 !tor.start(); /*public void stop() tryrab.stop();rab=null;tor.stop();tor=null;catch(Exception e)*/為什么沒用?/public void destroy() / public void run()/此函數第三個調用 !URL codebase=getCodeBase();System.out.println(codebase);AudioClip audio1=getAudioClip(codebase,"龜兔賽跑 .wav");g.drawString(&q

40、uot;- 背景音樂魯晶晶制作 ",30,30);audio1.loop();boolean stop=false;/標志 , 此函數的精典之處. 控制兔子 , 龜什么時候停!while(!stop) tryThread.currentThread();Thread.sleep(1000);/ 當前線程調用 sleep() 函數 .catch (InterruptedException ex) String threadName=Thread.currentThread().getName();/取得當前線程的名子.if(threadName.equals("rabbit&

41、quot;)&&x1<=800)/兔子動的實現方法! int t1=0,t2=0; str1="rabbit"x1=x1+(int)(Math.random()*30);rab_time=rab_time+1;rab_road+=(int)(Math.random()*25);if(x1>=120&&x1<=140&&x1<x2) str1="烏龜跑這么慢,我肯定能追上他!我先睡一會"str2="哼,別以為自己是兔子就了不起!你就睡吧!"rabbit = getI

42、mage( getCodeBase(),"兔子睡覺 .jpg");if(x1>=120&&x1<=130)str1="烏龜跑這么慢,我先睡一會"str2=" 哼,別以為自己是兔子就了不起!你就睡吧! "rabbit = getImage( getCodeBase(),"兔子睡覺 .jpg");try t1=(int)(Math.random()*30000);Thread.currentThread();Thread.sleep(t1);catch (InterruptedException ex) rab_time+=(double)t1/1000;if(x1>140) rabbit = getImage( getCodeBase(),"r

溫馨提示

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

評論

0/150

提交評論