影音先锋男人资源在线观看,精品国产日韩亚洲一区91,中文字幕日韩国产,2018av男人天堂,青青伊人精品,久久久久久久综合日本亚洲,国产日韩欧美一区二区三区在线

C++俄羅斯方塊程序設計詳細說明

上傳人:仙*** 文檔編號:26954344 上傳時間:2021-08-15 格式:DOC 頁數(shù):34 大?。?69KB
收藏 版權申訴 舉報 下載
C++俄羅斯方塊程序設計詳細說明_第1頁
第1頁 / 共34頁
C++俄羅斯方塊程序設計詳細說明_第2頁
第2頁 / 共34頁
C++俄羅斯方塊程序設計詳細說明_第3頁
第3頁 / 共34頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《C++俄羅斯方塊程序設計詳細說明》由會員分享,可在線閱讀,更多相關《C++俄羅斯方塊程序設計詳細說明(34頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、該實驗制作的是小游戲----俄羅斯方塊 1.可實現(xiàn)以下基本功能: 用戶可自定義添加或刪除方塊樣式及顏色; 用戶可自定義修改游戲背景顏色及按鍵設置。 2.另增加了幾個功能: 按鍵設置改變后點擊保存,會彈出對話框提示“保存成功” ; 點擊“開始”運行游戲,背景音樂自動播放,點擊暫停后,背景音樂也隨之停止; 每消除一行,會有特效聲音提示消除成功; 根據(jù)消行多少會自動加分并顯示。 游戲界面效果圖如下: 配置窗體效果圖如下: 磚塊樣式配置效果圖如下: 游戲設計分為如下九個部分:

2、一, 新建窗體“配置窗體”(TrmConfig) 添加TabControl控件 (1) 磚塊樣式配置 I.abel控件(lblMode) 點擊“事件”,選擇“Paint” Graphics gp=e.Graphics; gp.Clear(Color.Black); Pen p=new Pen(Color.White); for (int i=31;i<155;i=i+31) gp.DrawLine(p,1,i,155,i); for (int i=31;i<155;i=i+31) gp.DrawLine(p,i,1,i,155); SolidBrush s=new So

3、lidBrush(blockColor); for (int x=0;x<5;x++) { for(int y=0;y<5;y++) { if(struArr[x,y]) { gp.FillRectangle(s,31*x+1,31*y+1,30,30); } } } 點擊“事件”,選擇“MouseClick” private bool[,] struArr=new bool[5,5]; private Color blockColor=Color.Red; ----------------------------------------------------

4、---- if (e.Button!=MouseButtons.Left) return; int xPos,yPos; xPos=e.X/31; yPos=e.Y/31; struArr[xPos,yPos]=!struArr[xPos,yPos]; bool b=struArr[xPos,yPos]; Graphics gp=lblMode.CreateGraphics(); SolidBrush s=new SolidBrush(b ? blockColor:Color.Black); gp.FillRectangle(s,31*xPos+1,31*yPos+1,30

5、,30); gp.Dispose(); II.添加ColorDialog控件 添加label(lblColor)控件 點擊“事件”,選擇“click” colorDialog1.ShowDialog(); blockColor=colorDialog1.Color; lblColor.BackColor=colorDialog1.Color; lblMode.Invalidate(); III.添加listView控件(lsvBlockSet) 點擊“事件”,選擇“ItemSelectionChanged” if (e.IsSelected) { blockC

6、olor=Color.FromArgb(int.Parse(e.Item.SubItems[1].Text)); lblColor.BackColor=blockColor; string s=e.Item.SubItems[0].Text; for(int i=0;i

7、if(i) { isEmpty=true; break; } } if (!isEmpty) { MessageBox.Show("圖案為空,請先用鼠標點擊左邊窗口繪制圖案!","提示窗口", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } StringBuilder sb=new StringBuilder(25); foreach (bool i in struArr) { sb.Append(i?"1":"0"); } string blockString=sb.ToString

8、(); foreach(ListViewItem item in lsvBlockSet.Items) { if (item.SubItems[0].Text==blockString) { MessageBox.Show("該圖案已經(jīng)存在!","提示窗口", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } } ListViewItem myItem=new ListViewItem(); myItem=lsvBlockSet.Items.Add(blockString); myItem.Sub

9、Items.Add(Convert.ToString(blockColor.ToArgb())); V.“刪除”按鈕(btnDel) if(lsvBlockSet.SelectedItems.Count==0) { MessageBox.Show("請在右邊窗口選擇一個條目進行刪除!","提示窗口", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } lsvBlockSet.Items.Remove(lsvBlockSet.SelectedItems[0]); btnClear.PerformCli

10、ck(); VI.“清空”(btnClear) for (int x=0;x<5;x++) { for(int y=0;y<5;y++) { struArr[x,y]=false; } } lblMode.Invalidate(); VII.“修改”(btnUpdate) if(lsvBlockSet.SelectedItems.Count==0) { MessageBox.Show("請在右邊窗口選擇一個條目進行修改!","提示窗口", MessageBoxButtons.OK, MessageBoxIcon.Information); retur

11、n; } bool isEmpty=false; foreach (bool i in struArr) { if(i) { isEmpty=true; break; } } if (!isEmpty) { MessageBox.Show("圖案為空,請先用鼠標點擊左邊窗口繪制圖案再進行修改!","提示窗口", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } StringBuilder sb=new StringBuilder(25); foreach (bool i in stru

12、Arr) { sb.Append(i?"1":"0"); } lsvBlockSet.SelectedItems[0].SubItems[0].Text=sb.ToString(); lsvBlockSet.SelectedItems[0].SubItems[1].Text=Convert.ToString(blockColor.ToArgb()); (2) 參數(shù)配置 I.添加GroupBox1控件(gbKeySet)“鍵盤設置” i.拖入六個label控件 ii.拖入六個TextBox控件(改名) 全部選中,選擇“事件”,選擇“KeyDown” if((e

13、.KeyValue>=33 && e.KeyValue<=36)||(e.KeyValue>=45 && e.KeyValue<=46)|| (e.KeyValue>=48 && e.KeyValue<=57)||(e.KeyValue>=65 && e.KeyValue<=90)|| (e.KeyValue>=96 && e.KeyValue<=107)||(e.KeyValue>=109 && e.KeyValue<=111)|| (e.KeyValue>=186 && e.KeyValue<=192)||(e.KeyValue>=219 && e.KeyValue<=222))

14、{ foreach(Control c in gbKeySet.Controls) { Control TempC=c as TextBox; if(TempC!=null &&((TextBox)TempC).Text!="") { if(((int)((TextBox)TempC).Tag)==e.KeyValue) { ((TextBox)TempC).Text=""; ((TextBox)TempC).Tag=Keys.None; } } } ((TextBox)sender).Text=e.KeyCode.ToString(); ((TextBox)sen

15、der).Tag=(Keys)e.KeyValue; } II.添加GroupBox2控件(gbEnvironmentSet)“環(huán)境設置” i.拖入四個label控件 ii.拖入三個TextBox控件(改名) 一個label控件(lblBackColor) 選擇“事件”,選擇“click” colorDialog1.ShowDialog(); lblBackColor.BackColor=colorDialog1.Color; III. i.參數(shù)初始化設置 為配置窗體的代碼窗口添加私有成員變量 private Config config=new Con

16、fig(); 初始化 config.LoadFromXmlFile(); InfoArr info = config.Info; ListViewItem myItem=new ListViewItem(); for(int i=0;i

17、tring(); txtDown.Tag=config.DownKey; txtDrop.Text=((Keys)config.DropKey).ToString(); txtDrop.Tag=config.DropKey; txtLeft.Text=((Keys)config.MoveLeftKey).ToString(); txtLeft.Tag=config.MoveLeftKey; txtRight.Text=((Keys)config.MoveRightKey).ToString(); txtRight.Tag=config.MoveRightKey; txtDeas

18、il.Text=((Keys)config.DeasilRotateKey).ToString(); txtDeasil.Tag=config.DeasilRotateKey; txtContra.Text=((Keys)config.ContraRotateKey).ToString(); txtContra.Tag=config.ContraRotateKey; txtCoorWidth.Text=config.CoorWidth.ToString(); txtCoorHeight.Text=config.CoorHeight.ToString(); txtRectPix.

19、Text=config.RectPix.ToString(); lblBackColor.BackColor=config.BackColor; ii.保存更改 選擇“事件”,選擇“click” 保存用戶更改的設置 InfoArr info=new InfoArr(); foreach(ListViewItem item in lsvBlockSet.Items) { info.Add(item.SubItems[0].Text,item.SubItems[1].Text); } config.Info=info; config.DownKey=(Keys)txtDo

20、wn.Tag; config.DropKey=(Keys)txtDrop.Tag; config.MoveLeftKey=(Keys)txtLeft.Tag; config.MoveRightKey=(Keys)txtRight.Tag; config.DeasilRotateKey=(Keys)txtDeasil.Tag; config.ContraRotateKey=(Keys)txtContra.Tag; config.CoorWidth=int.Parse(txtCoorWidth.Text); config.CoorHeight=int.Parse(txtCoorHei

21、ght.Text); config.RectPix=int.Parse(txtRectPix.Text); config.BackColor=lblBackColor.BackColor; config.SaveToXmlFile(); 二, 信息保存 解決方案中添加BlockSet.Xml文件 0000001100011000000000000 -65536 000000000011110

22、0000000000 -16711936 0000000000001100010000100 -8323073 0010000100001100000000000 -16776961 0000000100001100010

23、000000 -32704 0000000100001100001000000 -32513 0000000010001100010000000 -8372160 83 8

24、8 65 68 99 97 15 25 20

25、>-16777216 三, 一個磚塊的信息類 解決方案中添加BlockInfo.cs類 private BitArray _id; private Color _bColor; public BlockInfo(BitArray id,Color bColor) { _id=id; _bColor=bColor; } public BitArray ID { get { return _id; } set { _id=value; } } public Colo

26、r BColor { get { return _bColor; } set { _bColor=value; } } public string GetIdStr() { StringBuilder s=new StringBuilder(25); foreach(bool b in _id) { s.Append(b?"1":"0"); } return s.ToString(); } public string GetColorStr() { return Convert.ToString(_bColor.ToArgb()); } 由于使用

27、到了Color類,要添加命名空間 using Syetem.Drawing; 由于使用了StringBuilder類以及BitArray類 using System.Collections.Generic; -->using System.Collections; 四, 多個磚塊信息類 解決方案中添加InfoArr.cs類 I .各個方塊信息類 private ArrayList info = new ArrayList(); private int _length=0; public int Length { get { return _length;

28、} } public BlockInfo this[int index] { get { return (BlockInfo)info[index]; } } public string this[string id] { set { if(value =="") { return; } for(int i=0;i

29、oInt32(value)); } catch(System.FormatException) { MessageBox.Show("顏色信息錯誤!請刪除BlockSet.xml文件,并重新啟動程序","錯誤信息", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } } } //由于使用到了ArrayList,要添加命名空間 using System.Collections.Generic; -->using System.Collections; //由于使用到了MessageBox,要添加命名空間 usin

30、g System.Windows.Forms; 由于使用到了Color類,還要添加 using Syetem.Drawing; II.添加字符轉(zhuǎn)換成員方法 private BitArray StrToBit(string id) { if(id.Length !=25) { throw new System.FormatException("磚塊樣式信息不合法!請刪除BlockSet.xml文件,并重新啟動程序"); } BitArray ba =new BitArray(25); for(int i=0;i<25;i++) { ba[i]=(id[i]==0)?

31、false:true; } return ba; } III.添加磚塊信息成員方法 public void Add(BitArray id,Color bColor) { if(id.Length !=25) { throw new System.FormatException("磚塊樣式信息不合法!請刪除BlockSet.xml文件,并重新啟動程序"); } info.Add(new BlockInfo(id,bColor)); _length++; } IV.對上面方法重載 public void Add(string id,string bColor

32、) { Color temp; if(!(bColor=="")) { temp=Color.FromArgb(Convert.ToInt32(bColor)); } else { temp=Color.Empty; } info.Add(new BlockInfo(StrToBit(id),temp)); _length++; } 五, 新建配置類 解決方案中添加 Config.cs類 private Keys _downKey; private Keys _dropKey; private Keys _moveLeftKey; private

33、Keys _moveRightKey; private Keys _deasilRotateKey; private Keys _contraRotateKey; private int _coorWidth; private int _coorHeight; private int _rectPix; private Color _backColor; private InfoArr info=new InfoArr(); I.私有變量屬性 #region 私有變量相應的屬性 public Keys DownKey { get { return _downKey;

34、 } set { _downKey=value; } } public Keys DropKey { get { return _dropKey; } set { _dropKey=value; } } public Keys MoveLeftKey { get { return _moveLeftKey; } set { _moveLeftKey=value; } } public Keys MoveRightKey { get { return _moveRightKey; } set { _moveRightKey

35、=value; } } public Keys DeasilRotateKey { get { return _deasilRotateKey; } set { _deasilRotateKey=value; } } public Keys ContraRotateKey { get { return _contraRotateKey; } set { _contraRotateKey=value; } } public int CoorWidth { get { return _coorWidth; } set { if(va

36、lue>=10&&value<=50) _coorWidth=value; } } public int CoorHeight { get { return _coorHeight; } set { if(value>=15&&value<=50) _coorHeight=value; } } public int RectPix { get { return _rectPix; } set { if(value>=10&&value<=30) _rectPix=value; } } public Color BackColor {

37、get { return _backColor; } set { _backColor=value; } } public InfoArr Info { get { return info; } set { info=value; } } #endregion II.從xml讀取信息 public void LoadFromXmlFile()//從xml讀取信息 { XmlTextReader reader; if (File.Exists("BlockSet.xml")) { reader=new XmlTextReader("Blo

38、ckSet.xml"); } else { Assembly asm=Assembly.GetExecutingAssembly(); Stream sm=asm.GetManifestResourceStream("Tetris.BlockSet.xml"); reader=new XmlTextReader(sm); } string key=""; try { while(reader.Read()) { if(reader.NodeType ==XmlNodeType.Element) { if(reader.Name =="ID") { key=re

39、ader.ReadElementString().Trim(); info.Add(key,""); } else if (reader.Name =="Color") { info[key]=reader.ReadElementString().Trim(); } else if (reader.Name =="DownKey") { _downKey=(Keys)Convert.ToInt32(reader.ReadElementString().Trim()); } else if (reader.Name =="DropKey") { _dropKey=(Ke

40、ys)Convert.ToInt32(reader.ReadElementString().Trim()); } else if (reader.Name =="MoveLeftKey") { _moveLeftKey=(Keys)Convert.ToInt32(reader.ReadElementString().Trim()); } else if (reader.Name =="MoveRightKey") { _moveRightKey=(Keys)Convert.ToInt32(reader.ReadElementString().Trim()); } else

41、if (reader.Name =="DeasilRotateKey") { _deasilRotateKey=(Keys)Convert.ToInt32(reader.ReadElementString().Trim()); } else if (reader.Name =="ContraRotateKey") { _contraRotateKey=(Keys)Convert.ToInt32(reader.ReadElementString().Trim()); } else if (reader.Name =="CoorWidth") { _coorWidth=Conv

42、ert.ToInt32(reader.ReadElementString().Trim()); } else if (reader.Name =="CoorHeight") { _coorHeight=Convert.ToInt32(reader.ReadElementString().Trim()); } else if (reader.Name =="RectPix") { _rectPix=Convert.ToInt32(reader.ReadElementString().Trim()); } else if (reader.Name =="BackColor")

43、 { _backColor=Color.FromArgb(Convert.ToInt32(reader.ReadElementString().Trim())); } } } } catch(Exception ex) { MessageBox.Show(ex.ToString()); } finally { if(reader !=null) reader.Close(); } III.把信息保存為xml文件 public void SaveToXmlFile() //把信息保存為xml文件 { XmlDocument doc =new XmlDocu

44、ment(); doc.LoadXml(""); XmlNode root=doc.SelectSingleNode("BlockSet"); for(int i=0;i

45、XmlElement xelColor=doc.CreateElement("Color"); xelColor.InnerText=((BlockInfo)info[i]).GetColorStr(); xelType.AppendChild(xelColor); root.AppendChild(xelType); } //寫快捷鍵 XmlElement xelKey=doc.CreateElement("Key"); XmlElement xelDownKey=doc.CreateElement("DownKey"); xelDownKey.InnerText=Con

46、vert.ToInt32(_downKey).ToString(); xelKey.AppendChild(xelDownKey); XmlElement xelDropKey=doc.CreateElement("DropKey"); xelDropKey.InnerText=Convert.ToInt32(_dropKey).ToString(); xelKey.AppendChild(xelDropKey); XmlElement xelMoveLeftKey=doc.CreateElement("MoveLeftKey"); xelMoveLeftKey.Inner

47、Text=Convert.ToInt32(_moveLeftKey).ToString(); xelKey.AppendChild(xelMoveLeftKey); XmlElement xelMoveRightKey=doc.CreateElement("MoveRightKey"); xelMoveRightKey.InnerText=Convert.ToInt32(_moveRightKey).ToString(); xelKey.AppendChild(xelMoveRightKey); XmlElement xelDeasilRotateKey=doc.Create

48、Element("DeasilRotateKey"); xelDeasilRotateKey.InnerText=Convert.ToInt32(_deasilRotateKey).ToString(); xelKey.AppendChild(xelDeasilRotateKey); XmlElement xelContraRotateKey=doc.CreateElement("ContraRotateKey"); xelContraRotateKey.InnerText=Convert.ToInt32(_contraRotateKey).ToString(); xelKey.

49、AppendChild(xelContraRotateKey); root.AppendChild(xelKey); //寫界面信息 XmlElement xelSurface=doc.CreateElement("Surface"); XmlElement xelCoorWidth=doc.CreateElement("CoorWidth"); xelCoorWidth.InnerText= _coorWidth.ToString(); xelSurface.AppendChild(xelCoorWidth); XmlElement xelCoorHeight=do

50、c.CreateElement("CoorHeight"); xelCoorHeight.InnerText= _coorHeight.ToString(); xelSurface.AppendChild(xelCoorHeight); XmlElement xelRectPix=doc.CreateElement("RectPix"); xelRectPix.InnerText= _rectPix.ToString(); xelSurface.AppendChild(xelRectPix); XmlElement xelBackColor=doc.CreateElemen

51、t("BackColor"); xelBackColor.InnerText=_backColor.ToArgb().ToString(); xelSurface.AppendChild(xelBackColor); root.AppendChild(xelSurface); doc.Save("BlockSet.xml"); } 六, 新建方塊類 解決方案中添加Block.cs類 protected Point[] structArr; protected int _xPos; protected int _yPos; protected Color _

52、blockColor; protected Color disapperColor; protected int rectPix; public Block() { } public Block(Point[] sa, Color bColor, Color dColor, int pix) { _blockColor=bColor; disapperColor=dColor; rectPix=pix; structArr=sa; } public Point this[int index] { get { return structArr[index];

53、} } public int Length { get { return structArr.Length; } } #region 成員變量相應的屬性 public int XPos { get { return _xPos; } set { _xPos=value; } } public int YPos { get { return _yPos; } set { _yPos=value; } } public Color BlockColor { get { return _blockColor; } } #e

54、ndregion -------------------------------- public void DeasilRotate()//順時針旋轉(zhuǎn) { int temp; for(int i=0;i

55、 { temp=structArr[i].X; structArr[i].X=-structArr[i].Y; structArr[i].Y=temp; } } private Rectangle PointToRect(Point p)//坐標點轉(zhuǎn)化為畫布坐標值 { return new Rectangle((_xPos + p.X)*rectPix+1, (_yPos-p.Y)*rectPix+1, rectPix-2, rectPix-2); } public virtual void Paint(Graphics gp)//制定畫板下繪制磚塊 { Sol

56、idBrush sb=new SolidBrush(_blockColor); foreach(Point p in structArr) { lock(gp) { gp.FillRectangle(sb,PointToRect(p)); } } } public void erase(Graphics gp)//擦除矩形 { SolidBrush sb=new SolidBrush(disapperColor); foreach(Point p in structArr) { lock(gp) { gp.FillRectangle(sb,PointToRect

57、(p)); } } } 七, 新建生產(chǎn)磚塊的類 解決方案中添加BlockGroup.cs類 private InfoArr info; private Color disapperColor; private int rectPix; public BlockGroup() { Config config=new Config(); config.LoadFromXmlFile(); info=new InfoArr(); info=config.Info; disapperColor=config.BackColor; rectPix=config.R

58、ectPix; } public Block GetABlock() { Random rd=new Random(); int keyOrder=rd.Next(0,info.Length); BitAarry ba=info[keyOrder].ID; int struNum=0; foreach(bool b in ba) { if(b) { struNum++; } } Point[] structArr=new Point[struNum]; int k=0; for(int j=0;j

59、 structArr[k].X=j/5-2; structArr[k].Y=2-j%5; k++; } } return new Block(structArr,info[keyOrder].BColor,disapperColor,rectPix); } 八, 新建為磚塊活動定規(guī)則的類 在解決方案中添加Palette.cs類 private int _width=15; private int _height=25; private Color[,] coorArr; private Color disapperColor; private Graphic

60、s gpPalette; private Graphics gpReady; private BlockGroup bGroup; private Block runBlock; private Block readyBlock; private int rectPix; private System.Timers.Timer timerBlock; private int timeSpan=800; public Palette(int x,int y,int pix,Color dColor,Graphics gp,Graphics gr) { _width=x

61、; _height=y; coorArr=new Color[_width,_height]; disapperColor=dColor; gpPalette=gp; gpReady=gr; rectPix=pix; } public void Start() { bGroup=new BlockGroup(); runBlock=bGroup.GetABlock(); runBlock.XPos=_width/2; int y=0; for(int i=0;iy) { y=r

62、unBlock[i].Y; } } runBlock.YPos=y; gpPalette.Clear(disapperColor);//清空畫板 runBlock.Paint(gpPalette); Thread.Sleep(20); readyBlock=bGroup.GetABlock(); readyBlock.XPos=2; readyBlock.YPos=2; gpReady.Clear(disapperColor);//清空畫板 readyBlock.Paint(gpReady); timerBlock=new Sy

63、stem.Timers.Timer(timeSpan); timerBlock.Elapsed +=new System.Timers.ElapsedEventHandler(OnTimedEvent); timerBlock.AutoReset=true; timerBlock.Start(); } private void OnTimedEvent(object source,ElapsedEventArgs e) { CheckAndOverBlock(); Down(); } public bool Down() { int xPos=runBloc

64、k.XPos; int yPos=runBlock.YPos+1; for(int i=0;i_height-1) return false; if(!coorArr[xPos+runBlock[i].X,yPos-runBlock[i].Y].IsEmpty) return false; } runBlock.erase(gpPalette); runBlock.YPos++; runBlock.Paint(gpPalette); return true; } public

65、 void Drop() { timerBlock.Stop(); while(Down()); timerBlock.Start(); } public void MoveLeft() { int xPos=runBlock.XPos-1; int yPos=runBlock.YPos; for(int i=0;i

66、} runBlock.erase(gpPalette); runBlock.XPos--; runBlock.Paint(gpPalette); } public void MoveRight() { int xPos=runBlock.XPos+1; int yPos=runBlock.YPos; for(int i=0;i_width-1) return; if(!coorArr[xPos+runBlock[i].X,yPos-runBlock[i].Y].IsEmpty) return; } runBlock.erase(gpPalette); runBlock.XPos++; runBlock.Paint(gpPalette); } public void DeasilRotate() { for(int i=0;i

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

相關資源

更多
正為您匹配相似的精品文檔
關于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!