




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)報(bào)告題 目: 潛艇大作戰(zhàn)軟件設(shè)計(jì)與實(shí)現(xiàn) 院 (系): 信息科學(xué)與工程學(xué)院 專業(yè)班級(jí): 計(jì)算機(jī)科學(xué)與技術(shù)1201班 學(xué)生姓名: 程偉 學(xué) 號(hào): 20121183011 指導(dǎo)教師: 吳奕 20 14 年 12 月 29 日至20 15 年 1 月 9 日華中科技大學(xué)武昌分校制 面向?qū)ο蟪绦蛟O(shè)計(jì) 課程設(shè)計(jì)任務(wù)書一、設(shè)計(jì)(調(diào)查報(bào)告/論文)題目 潛艇大作戰(zhàn)軟件設(shè)計(jì)與實(shí)現(xiàn)二、設(shè)計(jì)(調(diào)查報(bào)告/論文)主要內(nèi)容內(nèi)容:設(shè)計(jì)一個(gè)戰(zhàn)艦獵捕潛艇的游戲,玩家以鍵盤輸入來(lái)控制戰(zhàn)艦的行動(dòng),獵殺潛艇獲得分?jǐn)?shù),進(jìn)入前十名有排名。 基本功能與要求:1首先繪制一個(gè)首頁(yè),首頁(yè)包括開始,退出按鈕,采用事件監(jiān)聽。
2、2進(jìn)入游戲后使用,通過讀取文件,讀出以前的最好成績(jī),使用菜單按鈕開始游戲。3通過方向鍵來(lái)控制潛艇的移動(dòng)方向,空格鍵釋放魚雷。4 擊中敵人后加分,同時(shí)被敵人擊中一次就扣除一次機(jī)會(huì),共三次機(jī)會(huì)三、原始資料1.面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)指導(dǎo)書2. 耿祥義JAVA大學(xué)實(shí)用教程北京:清華大學(xué)出版社,2009四、要求的設(shè)計(jì)(調(diào)查/論文)成果1.課程設(shè)計(jì)報(bào)告2.課程設(shè)計(jì)軟件五、進(jìn)程安排布置任務(wù),查找資料、需求分析1天總體設(shè)計(jì)1天詳細(xì)設(shè)計(jì)1.5天編制源程序?qū)崿F(xiàn)3.5天測(cè)試與修改1天撰寫課設(shè)報(bào)告2天六、主要參考資料1 張廣彬. Java課程設(shè)計(jì)案例精編(第二版).北京:清華大學(xué)出版社, 2011. 2 耿祥義.
3、Java課程設(shè)計(jì)(第二版).北京:清華大學(xué)出版社, 2008.3 耿祥義JAVA大學(xué)實(shí)用教程北京:清華大學(xué)出版社,20094 鄒林達(dá)陳國(guó)君 Java2程序設(shè)計(jì)基礎(chǔ)北京:清華大學(xué)出版社,20105 鄒林達(dá)Java2程序設(shè)計(jì)基礎(chǔ)實(shí)驗(yàn)指導(dǎo)北京:清華大學(xué),2010指導(dǎo)教師(簽名): 20 年 月 日目 錄1需求與總體設(shè)計(jì)11.1需求分析11.1.1界面需求11.1.2性能需求11.2總體設(shè)計(jì)思路,功能圖,類圖11.2.1程序設(shè)計(jì)思路11.2.2功能圖21.2.3類圖32詳細(xì)設(shè)計(jì)42.1詳細(xì)設(shè)計(jì)思路與類的說(shuō)明、細(xì)化42.1.1流程圖42.1.2類的說(shuō)明53編碼實(shí)現(xiàn)63.1 JAVA編碼實(shí)現(xiàn)64系統(tǒng)測(cè)試7
4、24.1開始游戲的界面724.2進(jìn)入游戲并選擇開始734.3暫停游戲的界面744.4前十名對(duì)話框與排名界面75總 結(jié)761需求與總體設(shè)計(jì)1.1需求分析1.1.1界面需求界面是一個(gè)窗口,游戲在此窗口上運(yùn)行,窗口上有分?jǐn)?shù)設(shè)置。1.1.2性能需求此游戲分?jǐn)撤綕撏Вㄈ舾桑┖臀曳綉?zhàn)艦(生命值3條)兩個(gè)角色,敵方潛艇在水下攻擊我方戰(zhàn)艦,我方戰(zhàn)艦于水上獵殺敵方潛艇。1.2總體設(shè)計(jì)思路,功能圖,類圖1.2.1程序設(shè)計(jì)思路此游戲的關(guān)鍵點(diǎn)是潛艇是否被擊中的判斷,整個(gè)屏幕是個(gè)二維坐標(biāo)系,軍艦在一個(gè)水平位置移動(dòng),當(dāng)在某個(gè)位置發(fā)射魚雷,判斷魚雷的圖片與不斷移動(dòng)的潛艇圖片是否會(huì)有重合的地方,如果有發(fā)生爆炸,如果沒有繼續(xù)移
5、動(dòng)。1.2.2功能圖1.2.3類圖2詳細(xì)設(shè)計(jì)2.1詳細(xì)設(shè)計(jì)思路與類的說(shuō)明、細(xì)化2.1.1流程圖本游戲的基本運(yùn)行流程是啟動(dòng)后把整個(gè)畫布昨?yàn)橐粋€(gè)線程,隨時(shí)準(zhǔn)備響應(yīng)用戶按鍵操作K的響應(yīng),100ms掃描一次潛艇和水雷等物體的運(yùn)行狀態(tài)。在掃描潛艇和水雷運(yùn)動(dòng)時(shí),執(zhí)行各個(gè)物體畫面的移動(dòng)方法。程序并不為每隔新增潛艇和水雷開啟一個(gè)新線程,太多線程會(huì)造成程序的性能直線下降;而是將每一個(gè)物體類型直接加入到畫布中,每當(dāng)一個(gè)新物體產(chǎn)生,將直接在畫布上畫出;當(dāng)物體消除時(shí),將直接在畫布上被消除。這樣就形成以種注冊(cè)機(jī)制,所有游戲物體產(chǎn)生和消除都需要畫布注冊(cè),畫布擁有不同類型物體的所有“名單”,所有,當(dāng)執(zhí)行的命令只是需要遍歷畫
6、布中所有游戲物體,依次執(zhí)行每隔游戲物體中定義的移動(dòng)方法即可。2.1.2類的說(shuō)明Blast:潛艇發(fā)射魚雷擊中戰(zhàn)艦后爆炸的效果。Bum:炸彈FrameObservable:監(jiān)聽者模式來(lái)監(jiān)聽游戲畫面切換。HelpDialog:游戲規(guī)則的對(duì)話框,提示游戲規(guī)則信息。Hit:潛艇被擊中的爆炸效果。InfoDialog:關(guān)于我們的對(duì)話框,關(guān)于游戲的一些信息。InputDialog:玩家得分進(jìn)圖前十名的提示對(duì)話框。MainPanel:進(jìn)圖游戲的主界面面板。MyButton:繪制游戲背景MyDialog: 暫停游戲的提示對(duì)話框。MyFrame:游戲窗體。MyPanel:主程序ScoreDialog:玩家沒有進(jìn)入
7、前十名游戲就結(jié)束的提示對(duì)話框。Submarine:潛艇對(duì)象。SubmarineWarMain:重新開始游戲。TimeManager:計(jì)時(shí)器產(chǎn)生潛艇。TimeManager2:計(jì)時(shí)器產(chǎn)生魚雷。Torpedo:潛艇發(fā)射的魚雷對(duì)象。WallDialog:玩家進(jìn)入前十名之后的成績(jī)排名信息對(duì)話框。WarShip:戰(zhàn)艦對(duì)象。3編碼實(shí)現(xiàn)3.1 JAVA編碼實(shí)現(xiàn)package com.stj.views;import java.awt.Color;import java.awt.Graphics2D;import java.util.Random;/* 潛艇發(fā)射的魚雷擊中戰(zhàn)艦后爆炸的效果對(duì)象,原理:繪制多個(gè)從
8、小到大然后從大到小的圓顯示爆炸效果 */public class Blast implements Runnableprivate int X; private int Y;private int r = 2,3,5,8,12,15,18,20,25,30,33,25,17,15,13,9,5; /圓的半徑集合private int step = 0; /集合中圓的位置標(biāo)記private boolean flag = false;public Blast(int x,int y)this.X = x;this.Y = y;public void drawBlast(Graphics2D g)R
9、andom random =new Random();int c = random.nextInt(2);if(c = 0)g.setColor( Color.RED);else if(c = 1)g.setColor(Color.ORANGE);if(this.step < r.length)/System.out.println("draw");/g.setColor(Color.gray);g.fillOval(this.X, this.Y, this.rthis.step, this.rthis.step);/step +;public void run()
10、while(!this.flag)step +;/System.out.println(step);try Thread.sleep(10); catch (InterruptedException e) / TODO Auto-generated catch blocke.printStackTrace();if(this.step = r.length)this.flag = true;public int getX() return X;public void setX(int x) X = x;public int getY() return Y;public void setY(in
11、t y) Y = y;public boolean isFlag() return flag;public void setFlag(boolean flag) this.flag = flag;package com.stj.views;import java.awt.*;import javax.swing.ImageIcon;public class Bumb implements Runnableprivate WarShip ship;private int beginX;private int beginY;private int width = 5;private int hei
12、ght = 15;public boolean flag = false;private MyPanel panel;private Image image;public Bumb(MyPanel p,WarShip ship)this.beginX= ship.getBeginX()+20;this.beginY = ship.getBeginY()+20;this.panel = p;this.ship = ship;image = Toolkit.getDefaultToolkit().getImage("imgs/炸彈.png");image = new Image
13、Icon(image).getImage();this.width = image.getWidth(panel);this.height = image.getHeight(panel);/System.out.println("bumb width:"+this.width);/System.out.println("bumb height:"+this.height);public void run() while(!flag)this.moveDown();if(this.panel.isStop() = true)synchronized(My
14、Panel.subLock)tryMyPanel.subLock.wait();catch(Exception e)e.printStackTrace();this.flag = true;tryThread.sleep(10);catch(Exception event)event.printStackTrace();this.flag = true;public void drawBumb(Graphics2D g)/g.setColor(Color.BLACK);/g.fillOval(this.beginX, this.beginY, this.radius, this.radius)
15、;g.drawImage(image, this.beginX, this.beginY, this.panel);public void moveDown()this.beginY += 1;if(this.beginY > (this.panel.getHeight() - this.height / 2)flag = true;/this.panel.repaint();public WarShip getShip() return ship;public void setShip(WarShip ship) this.ship = ship;public int getBegin
16、X() return beginX;public void setBeginX(int beginX) this.beginX = beginX;public int getBeginY() return beginY;public void setBeginY(int beginY) this.beginY = beginY;public int getWidth() return width;public void setWidth(int width) this.width = width;public int getHeight() return height;public void
17、setHeight(int height) this.height = height;import java.util.Observable;/*監(jiān)聽者模式來(lái)監(jiān)聽游戲畫面切換,從游戲進(jìn)入畫面到游戲主畫面,用MyFrame對(duì)象監(jiān)聽MainPanel */public class FrameObservable extends Observablepublic void notifyObservers(Object arg)/System.out.println("notify");this.setChanged();super.notifyObservers(arg); /
18、arg為被觀察的對(duì)象import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.LinearGradientPaint;import java.awt.Shape;import java.awt.Frame;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import java.awt.event.MouseMotionListener;impo
19、rt java.awt.geom.AffineTransform;import java.awt.geom.Area;import java.awt.geom.Ellipse2D;import java.awt.geom.Point2D;import java.awt.geom.RoundRectangle2D;import javax.swing.JDialog;import javax.swing.JFrame;import javax.swing.plaf.basic.BasicGraphicsUtils;import com.sun.awt.AWTUtilities;/*游戲規(guī)則的對(duì)話
20、框,提示游戲規(guī)則信息 */public class HelpDialog extends JDialog implements MouseMotionListener,MouseListenerprivate static final long serialVersionUID = 1L;protected JFrame frame1; private MyPanel panel;private boolean flag = false;private boolean isDraw = false;private boolean isOutDraw = false;public HelpDia
21、log(Frame frame,boolean modal,MyPanel panel)super(frame,modal);this.panel = panel;this.addMouseMotionListener(this);this.addMouseListener(this);this.setLocation(frame.getBounds().x + 180,frame.getBounds().y + 200);this.setSize(300, 200);this.setUndecorated(true); this.setVisiableRigeon(this.getWidth
22、(), this.getHeight();this.setVisible(true);public void paint(Graphics g)super.paint(g);Graphics2D g2 = (Graphics2D) g;/g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING , RenderingHints.VALUE_ANTIALIAS_ON);Point2D start = new Point2D.Float(this.getWidth()/2, 0);Point2D end = new Point2D.Float(this
23、.getWidth()/2, this.getHeight();float dist = 0.05f,1.0f;Color colors = new Color(58,95,205), Color.CYAN;LinearGradientPaint p =new LinearGradientPaint (start,end, dist, colors);g2.setPaint(p);g2.fillRect(0,0, this.getWidth(), this.getHeight();String title = new String("游戲規(guī)則");g2.setFont(ne
24、w Font("華文行楷",Font.BOLD,25);g2.setColor(Color.yellow);BasicGraphicsUtils.drawString(g2, title, 100, 90, 50);String context = new String("按 <- 或 A 鍵 控制軍艦向左");g2.setFont(new Font("華文行楷",Font.BOLD,15);g2.setColor(Color.yellow);BasicGraphicsUtils.drawString(g2, context,
25、100, 50, 100);String context1 = new String("按 -> 或 D 鍵 控制軍艦向右");g2.setFont(new Font("華文行楷",Font.BOLD,15);g2.setColor(Color.yellow);BasicGraphicsUtils.drawString(g2, context1, 100, 50, 120);String context2 = new String("按空格鍵扔炸彈");g2.setFont(new Font("華文行楷",F
26、ont.BOLD,15);g2.setColor(Color.yellow);BasicGraphicsUtils.drawString(g2, context2, 100, 50, 140);/g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING , RenderingHints.VALUE_ANTIALIAS_ON);this.repaintShape(); /設(shè)置對(duì)話框?yàn)閳A角矩形public void setVisiableRigeon(int width,int height)Shape shape = new RoundRectang
27、le2D.Float(20,20,this.getWidth() - 40,this.getHeight()-40,15.0f,15.0f);Shape shape2 = new Ellipse2D.Double(this.getWidth() - 40, 10,30,30);Area area = new Area(shape);Area area2 = new Area(shape2);area.add(area2);AWTUtilities.setWindowShape(this,area);public void mouseClicked(MouseEvent arg0) public
28、 void mouseEntered(MouseEvent arg0) /System.out.println("enter");public void mouseExited(MouseEvent arg0) /System.out.println("exit");this.flag = false;this.isDraw = false;if(!this.isOutDraw)/this.repaint(this.getWidth() - 40,10,30,30);this.repaintShape();this.isOutDraw = true;pu
29、blic void mousePressed(MouseEvent arg0) int x = arg0.getX();int y = arg0.getY();Shape shape = new Ellipse2D.Double(this.getWidth() - 40, 10, 30, 30);/System.out.print(111111);if(shape.contains(x,y)this.panel.goOn();this.setVisible(false);public void mouseReleased(MouseEvent arg0) / TODO Auto-generat
30、ed method stubpublic void mouseDragged(MouseEvent arg0) / TODO Auto-generated method stubpublic void mouseMoved(MouseEvent arg0) int x = arg0.getX();int y = arg0.getY();/System.out.print(x + " ");/System.out.println(y);Shape shape = new Ellipse2D.Double(this.getWidth() - 40, 10, 30, 30);Sh
31、ape shape2 = new Ellipse2D.Double(this.getWidth() - 40, 10,30,30);Area area = new Area(shape);Area area2 = new Area(shape2);area.add(area2);if(shape.contains(x,y)this.flag = true;this.isOutDraw = false;if(!this.isDraw)/this.repaint(this.getWidth() - 40,10,30,30);this.repaintShape();this.isDraw = tru
32、e;else if(!shape.contains(x,y)this.flag = false;this.isDraw = false;if(!this.isOutDraw)/this.repaint(this.getWidth() - 40,10,30,30);this.repaintShape();this.isOutDraw = true;public void repaintShape()Graphics2D g2 = (Graphics2D) this.getGraphics();if(!flag)g2.setColor(Color.gray);else if(flag)g2.set
33、Color(Color.red);g2.fillOval(this.getWidth() - 40, 10, 30, 30);g2.setColor(Color.white);Shape shape = new RoundRectangle2D.Float( this.getWidth() - 40 + 3,10 + 15 - 3,24,6,1.0f,1.0f);AffineTransform af = AffineTransform.getRotateInstance(0.7,this.getWidth() - 40 + 3 + 12,10 + 15 -3 + 3);shape = af.c
34、reateTransformedShape(shape);g2.fill(shape);Shape shape2 = new RoundRectangle2D.Float( this.getWidth() - 40 + 3,10 + 15 - 3,24,6,1.0f,1.0f);AffineTransform af2 = AffineTransform.getRotateInstance(-0.7,this.getWidth() - 40 + 3 + 12,10 + 15 -3 + 3);shape2 = af2.createTransformedShape(shape2);g2.fill(s
35、hape2);package com.stj.views;import java.awt.Graphics2D;import java.awt.Image;import java.awt.Toolkit;import javax.swing.ImageIcon;/*潛艇被擊中的爆炸效果,通過圖片顯示 */public class Hit implements Runnable private MyPanel panel; /主面板private Image image; /圖片private int liveTime = 500; /爆炸效果顯示的時(shí)間默認(rèn)為500毫秒private int b
36、eginX = 0; /位置 x yprivate int beginY = 0;private boolean isRunning = false; /游戲是否正在運(yùn)行標(biāo)志public Hit(int x,int y,MyPanel panel)this.beginX = x;this.beginY = y;this.panel = panel;this.image = Toolkit.getDefaultToolkit().getImage("imgs/炸彈效果.png");this.image = new ImageIcon(this.image).getImage(
37、);public void drawHitting(Graphics2D g)g.drawImage(this.image, this.beginX,this.beginY,this.panel);public void run()while(!this.isRunning)try Thread.sleep(this.liveTime); catch (InterruptedException e) / TODO Auto-generated catch blocke.printStackTrace();this.isRunning = true;public boolean isRunnin
38、g() return isRunning;public void setRunning(boolean isRunning) this.isRunning = isRunning;package com.stj.views;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.LinearGradientPaint;import java.awt.Shape;import java.awt.Frame;import java.a
39、wt.event.MouseEvent;import java.awt.event.MouseListener;import java.awt.event.MouseMotionListener;import java.awt.geom.AffineTransform;import java.awt.geom.Area;import java.awt.geom.Ellipse2D;import java.awt.geom.Point2D;import java.awt.geom.RoundRectangle2D;import javax.swing.JDialog;import javax.s
40、wing.JFrame;import javax.swing.plaf.basic.BasicGraphicsUtils;import com.sun.awt.AWTUtilities;/* 關(guān)于我們的對(duì)話框,關(guān)于游戲的一些信息 */public class InfoDialog extends JDialog implements MouseMotionListener,MouseListenerprivate static final long serialVersionUID = 1L;protected JFrame frame1;private MyPanel panel;priva
41、te boolean flag = false;private boolean isDraw = false;private boolean isOutDraw = false;/private MouseInfo mouse;public InfoDialog(Frame frame,boolean modal,MyPanel panel)super(frame,modal);this.panel = panel;this.addMouseMotionListener(this);this.addMouseListener(this);this.setLocation(frame.getBo
42、unds().x + 180,frame.getBounds().y + 200);this.setSize(300, 200);this.setUndecorated(true); this.setVisiableRigeon(this.getWidth(), this.getHeight();this.setVisible(true);public void paint(Graphics g)super.paint(g);Graphics2D g2 = (Graphics2D) g;/g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING ,
43、 RenderingHints.VALUE_ANTIALIAS_ON);Point2D start = new Point2D.Float(this.getWidth()/2, 0);Point2D end = new Point2D.Float(this.getWidth()/2, this.getHeight();float dist = 0.05f,1.0f;Color colors = new Color(58,95,205), Color.CYAN;LinearGradientPaint p =new LinearGradientPaint (start,end, dist, col
44、ors);g2.setPaint(p);g2.fillRect(0,0, this.getWidth(), this.getHeight();String title = new String("關(guān)于我們");g2.setFont(new Font("楷體",Font.BOLD,25);g2.setColor(Color.yellow);BasicGraphicsUtils.drawString(g2, title, 100, 90, 50);String context = new String("本游戲?yàn)镴ava awt和swing組件&q
45、uot;);g2.setFont(new Font("楷體",Font.BOLD,15);g2.setColor(Color.yellow);BasicGraphicsUtils.drawString(g2, context, 100, 35, 80);String context1 = new String("模擬的休閑小游戲潛艇大戰(zhàn)");g2.setFont(new Font("楷體",Font.BOLD,15);g2.setColor(Color.yellow);BasicGraphicsUtils.drawString(g2,
46、 context1, 100, 35, 100);String context2 = new String("由于本人時(shí)間有限,沒有對(duì)代碼");g2.setFont(new Font("楷體",Font.BOLD,15);g2.setColor(Color.yellow);BasicGraphicsUtils.drawString(g2, context2, 100, 35, 120);String context3 = new String("進(jìn)行優(yōu)化和界面UI處理,所以有");g2.setFont(new Font("楷
47、體",Font.BOLD,15);g2.setColor(Color.yellow);BasicGraphicsUtils.drawString(g2, context3, 100, 35, 140);String context4 = new String("很多的不足之處,僅做學(xué)習(xí)之用。");g2.setFont(new Font("楷體",Font.BOLD,15);g2.setColor(Color.yellow);BasicGraphicsUtils.drawString(g2, context4, 100, 35, 160);/g2
48、.setRenderingHint(RenderingHints.KEY_ANTIALIASING , RenderingHints.VALUE_ANTIALIAS_ON);this.repaintShape(); public void setVisiableRigeon(int width,int height)Shape shape = new RoundRectangle2D.Float(20,20,this.getWidth() - 40,this.getHeight()-40,15.0f,15.0f);Shape shape2 = new Ellipse2D.Double(this
49、.getWidth() - 40, 10,30,30);Area area = new Area(shape);Area area2 = new Area(shape2);area.add(area2);AWTUtilities.setWindowShape(this,area);public void mouseClicked(MouseEvent arg0) public void mouseEntered(MouseEvent arg0)/System.out.println("enter");public void mouseExited(MouseEvent ar
50、g0) /System.out.println("exit");this.flag = false;this.isDraw = false;if(!this.isOutDraw)/this.repaint(this.getWidth() - 40,10,30,30);this.repaintShape();this.isOutDraw = true;public void mousePressed(MouseEvent arg0) int x = arg0.getX();int y = arg0.getY();Shape shape = new Ellipse2D.Double(this.getWidth() - 40, 10, 30, 30);/System.out.print(111111);if(shape.contains(x,y)this.panel.goOn();this.setVisible(false);public void mouseReleased(MouseEvent arg0) / TODO Auto-generated method stubpublic void mouseDragged(MouseEvent arg0) / TODO Auto-generated method stubpublic void mou
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年體育休閑廣場(chǎng)周邊配套設(shè)施完善策略研究報(bào)告
- 2025年商業(yè)地產(chǎn)數(shù)字化運(yùn)營(yíng)模式創(chuàng)新客戶體驗(yàn)優(yōu)化路徑研究報(bào)告
- 藥品耗材倉(cāng)庫(kù)管理制度
- 藥品銷售環(huán)節(jié)管理制度
- 藥店加盟進(jìn)貨管理制度
- 藥店煎藥日常管理制度
- 蓮花味精績(jī)效管理制度
- 論述負(fù)面清單管理制度
- 設(shè)備制造采購(gòu)管理制度
- 設(shè)備寄存?zhèn)}庫(kù)管理制度
- 企業(yè)專職消防隊(duì)建設(shè)標(biāo)準(zhǔn)
- 鐵道概論(第八版)佟立本主編
- 腹腔鏡手術(shù)麻醉教學(xué)查房
- 國(guó)開04623- 會(huì)計(jì)信息系統(tǒng)機(jī)考復(fù)習(xí)資料
- 第七次課第四章證據(jù)的學(xué)理分類
- 水產(chǎn)品加工項(xiàng)目實(shí)施方案
- IEEE33節(jié)點(diǎn)配電系統(tǒng)
- 華為HCIA網(wǎng)絡(luò)技術(shù)實(shí)驗(yàn)配置及拓?fù)鋱D
- 破陣子-晏殊課件
- 新疆烏魯木齊市天山區(qū)2022-2023學(xué)年小升初總復(fù)習(xí)數(shù)學(xué)精選精練含答案
- 七年級(jí)數(shù)學(xué)下冊(cè)期末考試卷附帶答案(京改版)
評(píng)論
0/150
提交評(píng)論