毕业论文-温洋.doc

【精品】VB扫雷游戏的设计与开发(论文+答辩PPT+系统)

收藏

资源目录
跳过导航链接。
【精品】VB扫雷游戏的设计与开发(论文+答辩PPT+系统).rar
VB扫雷游戏的设计与开发(论文+答辩PPT+系统)
vb
VB0217_VB0370扫雷游戏的设计与开发
图片
毕业设计论文及源代码
压缩包内文档预览:(预览前20页/共22页)
预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图
编号:1639292    类型:共享资源    大小:418.91KB    格式:RAR    上传时间:2017-08-30 上传人:机****料 IP属地:河南
50
积分
关 键 词:
精品 vb 扫雷 游戏 设计 开发 论文 答辩 ppt 系统
资源描述:
【精品】VB扫雷游戏的设计与开发(论文+答辩PPT+系统),精品,vb,扫雷,游戏,设计,开发,论文,答辩,ppt,系统
内容简介:
分类号: 007) 5792 级:公 开 编号 : 2003211053 成 都 信 息 工 程 学 院 学 位 论 文 扫雷游戏的设计与开发 论文作者姓名: 温 洋 申请学位专业: 网络工程 申请学位类别: 工学 学士 指导教师姓名(职称): 刘永红 ( 副教授 ) 论文提交日期: 2007 年 06月 06 日 扫雷游戏的设计与开发 摘 要 本论文研究的是以 开发环境,设计并开发一款扫雷游戏,其功能类似于 作系统自带的扫雷游戏。论文首先介绍了制作游戏的整体思路及整个游戏设计的流程规划,然后介绍了雷区的布置及地雷随机产生的实现方法;重点介绍了在游戏过程中各事件的处理,其中又以鼠标事件和清除未靠近地雷区方块这两方面最为最要,鼠标事件是利用鼠标所发出的信息了解使用者的意图,进而做出相对应的动作,而清除未靠近地雷区方块由于引进了“递归”这个概念而使其简单化。 本次设计只是完成了扫雷游戏的基本功能,在细节方面仍有待以后完善。 关键词 : 扫雷; 件;递归 of my is on a is to of of of to at s of of .0 of on of in of of t to of is of is by by to is by of of of to be 录 论文总页数: 18页 1 引言 . 1 . 1 . 1 2 游戏的总体分析与设计 . 3 . 3 . 4 . 5 3 游戏的详细设计 . 6 . 6 . 9 . 10 . 10 . 12 . 12 . 14 . 14 . 14 . 14 4 游戏测试结果 . 15 结 论 . 15 参考文献 . 16 致 谢 . 17 声 明 . 18 第 1 页 共 18 页 1 引言 题背景及意义 在计算机逐步渗入社会生活各个层面的今天,计 算机已经成为人们日常生 的一部分,越来越多的人使用计算机办公、娱乐等等。 扫雷游戏是 作系统自带的一款小游戏,在过去的几年里,作系统历经数次换代更新,变得越来越庞大、复杂,功能也越来越强大,但是这款小游戏依然保持原来的容貌,可见这款小游戏受到越来越多人的喜爱。本次的毕业设计我将利用 为开发工具,开发一款类似的“扫雷游戏”。 通过研究 作系统自 带的扫雷游戏,我们可以发现在这个游戏中主要有以下两个关键的地方: 第一个是初始化问题,包括随机产生本局游戏中雷的总数,雷的分布对于每一个小区域如何获取周围地区分布的雷数等等。 第二就是对鼠标事件的处理问题,既在游戏过程中对鼠标事件应如何做出反应。 经过四年的大学学习,我对理论知识已经有了一定的了解与认知,本次的毕业设计便是将书本上所学的理论知识与实际相结合,同时也是对所学知识的一种检查,希望通过本次的毕业设计使自己在程序的开发和设计上有新的认识并能有所提高。本次毕业设计既锻炼了我们的实际动手能力,又在老师的 指导下进行了一次模拟实际产品的开发,对于我们以后工作能力的培养具有重要意义。 开发工具的选用及介绍 一种由微软公司开发的包含协助开发环境的事件驱动编程语言。从任何标准来说, 是世界上使用人数最多的语言 不仅是盛赞 开发者还是抱怨 开发者的数量。它源自于 程语言。 有图形用户界面( 快速应用程序开发( 统,可以轻易的使用 接数据库,或者轻松的创建 件。程序员可以轻松的使用应用程序。 1991年,微软公司推出了 。这在当时引起了很大的轰动。这个连接编程语言和用户界面的进步被称为 些时候叫做 最初的设计是由阿兰 库珀( 成的。许多专家把 出现当做是软件开发史上的一个具有划时代意义的事件。其实,以我们现在的目光来看,功能实在是太弱了;(不过最近 功能相当大!)。但在当时,它是第一个 “ 可视 ” 的编程软件。这使得程序员欣喜之极,都尝试在 软也不失时机地在四年内接连推出 第 2 页 共 18 页 且从 软将 数据库驱动集成到了 使得 能强大,学习简单。而且, 引入了 “ 控件 ” 的概念,使得大量已经编好的 序可以被我们直接拿来使用。 本 991年发布。这个连接编程语言和用户界面的进步被称为 些时候叫做 最初的设计是由阿兰 库珀( 成的 。 005 的 “ 显著 ” 优点是,可以直接编写出 格的按钮,以及其他的控件。但是其编写的小程序占用近 10内存。通过几年的发展,它已成为一种专业化的开发语言和环境。用户可用 速创建 序,现在还可以编写企业水平的客户端 /服务器程序及强大的数据库应用程序。 会继续为广大的用户和程序员使用。它非常适合用来开发拥有友好界面的程序(比如针对终端的数据),但是不适合开发其它程序(比如联合计算程序)。 一个典型的 程 使用,无论是新手或者专家。 用了可以简单建立应用程序的 统,但是又可以开发相当复杂的程序。 程序是一种基于窗体的可视化组件安排的联合,并且增加代码来指定组建的属性和方法。因为默认的属性和方法已经有一部分定义在了组件内,所以程序员不用写多少代码就可以完成一个简单的程序。过去的版本里面 序的性能问题一直被放在了桌面上,但是随着计算机速度的飞速增加,关于性能的争论已经越来越少。 窗体控件的增加和改变可以用拖放技术实现。一个排列满控件的工具箱用来显示可用控件(比如文本框或者按钮 。每个控件都有 自己的属性和事件。默认的属性值会在控件创建的时候提供,但是程序员也可以进行更改。很多的属性值可以在运行时候随着用户的动作和修改进行改动,这样就形成了一个动态的程序。举个例子来说:窗体的大小改变事件中加入了可以改变控件位置的代码,在运行时候每当用户更改窗口大小,控件也会随之改变位置。在文本框中的文字改变事件中加入相应的代码,程序就能够在文字输入的时候自动翻译或者阻止某些字符的输入。 程序可以包含一个或多个窗体,或者是一个主窗体和多个子窗体,类似于操作系统的样子。有很少功能的对话框窗口(比如没有最大化和最小 化按钮的窗体)可以用来提供弹出功能。 可以没有。这样一来服务器端程序就可以处理增加的模块。 个方法中包含有大量的对象,提供基本的面向对象支持。因为越来越多组建的出现,程序员可以选用自己需要的扩展库。和有些语言不一样, 大小写不敏感,但是能自动转换关键词到 第 3 页 共 18 页 标准的大小写状态,以及强制使得符号表入口的实体的变量名称遵循书写规则。默认情况下字符串的比较是对大小写敏感的,但是可以关闭这个功能。 量 的第三方控件针对 用和重用这些控件的方法,但是由于语言问题,从一个应用程序创建另外一个并不简单。 在讨论 ,经常可以听到以下这些术语,因此对这些术语的基本理解十分有帮助。 控件 简单的说,控件就是构成或者说建造 用程序的图形化工具,包括窗体、按钮、复选框、列表框、数据控件、表格控件和图片控件等等 .。 事件 由用户或操作系统引发的动作。事件的示例有击键、单击鼠标(双击鼠标 (一段时间的限制,或从 端口接收数据。 方法 嵌入在对象定义中的程序代码,它定义对象怎样处理信息并响应某事件。例如,数据库对象有打开纪录集并从一个记录移动到另一个记录的方法程序的基本元素,它含有定义其特征的属性,定义其任务和识别它可以响应的事件的方法。控件和窗体是 对象 一个控件、窗体等都可被看作一个对象。 过程 为完成某些特定的任务而编写的代码段,过程通常用于响应特定的事件,也可以当作应用程序的用户自定义函数来使用。 属性 属性是组成用户界面的各对象的性质的具体描述。例如上述 “ 对象 ” 中所提到的尺寸、位置、颜色、宽度、高度等等都称为控件的 属性。属性决定对象的外观,有时也决定对象的行为。对象的属性绝大部分是 已经事先定义好的,但也有的属性是需要在应用 过程中才去定义的。属性即可为对象提供数据,也能从对象取回信息。 随着 迅猛发展, 被不失时机地加入到 0版本中 (1997 年 )。在 1998年, 出了 0 版本,这一版本使 到了很大的扩充和增强。它还 引入了使用部件编程的概念,实际上这是对面向对象编程思想的扩展。迄今为止,经发展成为快速应用程序开发 (具的代表。 2 游戏的总体分析与设计 计构想 相信 大多数使用 作系统的使用者,对这款游戏都不陌生。这款游戏不止操作简单,规则也不难,再加上游戏速度的控制机制得宜,让整个游戏 第 4 页 共 18 页 在操作过程中充满了快乐与紧张的气氛。除了游乐当中能带给使用者快乐之外,游戏的设计内容无形中也不断训练使用者的逻辑思考能力,对于依靠高 度脑力工作的现代人,都可以通过这个游戏,不时的检验一下自己,所以我们不难发现,在各种可携带的电子产品上都有这款游戏的踪影。 在设计之前,我们先来了解这款游戏的规则。 在不掀开任何藏有地雷的方块情况下,以最快的速度找出所有的地雷。如果在掀开方块的过程中,不小心翻开(踩到)藏有地雷的方块,则宣告失败(游戏结束),惟有将所有不含地雷的方块掀开,游戏才算成功。 游戏的操作方面主要以鼠标为主,当鼠标指针对准未翻开的方块按下左键时即表示翻开方块,当鼠标指针对准未翻开的方块按下右键时即表示标示或疑示地雷,反复按下右键则方 块会以未标示标示疑似三者关系不断循环。游戏者可以通过地雷区内的数字提示了解以数字为中心的其周边八个方格内所含的地雷数,假若翻开的方块显示数字“ 3”,则表示以其为中心的周边方块内藏有 3 个地雷。 当按下的方块不是地雷,且周边八个方块也都没有地雷时,方块会以被翻开方块的八个方向将空白方块翻开。 程规划 流程规划大致上可以分为三个部分,分别为:画面初始、游戏者按下第一个方块和为非地雷方块时展开。 画面初始时,以游戏者最后一次设定的地雷区大小为范围画出地雷区,但此时并未产生地雷。当游戏者按下第一个方块时 产生地雷资料并启动定时器,为何在游戏者按下第一个方块才产生地雷资料呢?其主要的用意在于不要让游戏者第一次就踩到地雷,这样在某种程度上可以提高游戏者游玩的气氛。接着就是如何判断按下的方块是非地雷时的处理,这也是整个游戏的技术核心,我们可以通过递归的观念来检查周边的方块是否含有地雷及是否继续往外翻开。 流程规划如图 1所示: 第 5 页 共 18 页 图 1整体流程规划图 画面规划如图 2所示: 开始 依照使用者初始设定 等待按键 左 键键 右键 第一次按 下方块 显示方块 1 布置地图 2 启动计时器 按下方块是否为地图 显示分数 是否再 玩 结 束 延按下方块周围展开非地雷方块 计时器 时间到 否 否 是 是 否 否 是 是 否 第 6 页 共 18 页 图 2规划样图 说明如下: :游戏窗口( 。为了避免因改变窗口大小而造成画面呈现不美观,在这里将 性设定为 3(双线固定对话框),即无法以窗口边缘进行窗口大小调整。 :地雷数显示区( :游戏状态 ( :游戏时间显示区 ( :计数及状态区 ( :地图区图样 ( :地雷区 ( :存储图片的组件,包括游戏状态图片、地雷区图片、地 雷数及秒数数字图片 ( :秒数控制 ( 3 游戏的详细设计 戏初始化 当玩家开始游戏时,游戏画面如图 3 所示: 第 7 页 共 18 页 图 3游戏初始画面 我们可以清楚的看到,游戏界面主要分为两个主要部分: 1. 计数及状态区 ; 首先我利用 件, 容器类型的组件,因此可以加入其他组件在其内。在游戏中我利用了 件的两个特性,分别为容器特性及立体框线,具体如下: (1)容器特性:只要容器本身显示的行为改变,在容器内的组件也会跟 着改变。当游戏初始时,地雷区的显示组件会循环执行,逐一布置在画面上,但由于执行循环时多个 件要显示图形,造成分时系统执行频率显示上会出现不流畅的情形,若在循环执行前,先将容器本身的 循环执行完成后再将 显示就会变得流畅许多。 (2)立体 框线:通过组件本身立体框线的属性设定,可以为游戏画面的显示上营造出层次感。 然后再利用 件来存储游戏中将要使用的图片,我们可以将组件布置于窗体后编辑组件属性,如图 4所示: 图 4 通过 钮即可编辑组件所存放的图片。 计数及状态区 地雷区 第 8 页 共 18 页 利用 合对象的 法,即可将 件内的图片指定给图形显示组件,语法如下: 形组件 . 片索引 ). 为一个 件内必须存储大小相同的图片,所以在游戏中显示的图片共分为三个部分: 所以我们使用了三个 件来 存储不同大小的图片。 接着便是对地雷区的初始化,这里我们利用 令,动态新增 及删除组件。在游戏的地雷区,我们依照游戏者自定义的地图类型,来布置未探测地雷方块。假如设定的地图大小为 20 30 时,我们可以通过双循环 令在程序执行阶段动态加载表示方块的组件,程序片段如下 : 加载表示地图资料的图片 y = 0 0 地雷区高 x = 0 0 地雷区宽 表示方块组件( 设定组件位置 x y 经过双循环的运算,程序就会产生 20 30=600 个组件,试想如果在程序设计阶段,就把 600 个组件布置在窗体上,那将是多么没有效率的事情,况且组件数量的多少,还要取决于游戏玩家设定的地雷区大小,所以利用 令对于大量加载同一组件的动作将有莫大的帮助。 加载组件后必须将组件做适当的布置,我们可以通过 件的 性,将组件布置于预定的位置, 数的原型如下: 组件 坐标, Y 坐标 , 组件宽度 , 组件高度 (其中括号内表示可以省略) 再配合双循环的变量值,可 以控制组件布置于窗体的方向及方式,例如以下程序片段: y = 0 0 地雷区高 x = 0 0 地雷区宽 表示方块组件( 设定组件位置 组件( x *组件宽度, y *组件高度 x 第 9 页 共 18 页 y 组件将呈现先由左至右,再由上至下布置。 若将内循环改为 y 值,同样的 令,组件的布置方向将由上而下再由左至右。布置方向的不同,会关联到组件内 含的索引值不同,相对在程序执行阶段存取组件时,所定义的组件索引值就必须考虑组件不止的方向,这样才不会造成组件存取的错误。以由左至右再由上而下的布置方式为例,我们可以利用以下公式,求得组件索引值:组件索引值 =( X 坐标 +Y 坐标 *数组宽度) 这样,游戏界面的初始化工作就基本完成了,下面就是地雷的随机产生。 当游戏界面初始化完成后,这时在地雷区中并未产生地雷,只有当玩家在地雷区中第一次点下左键后,才会在地雷区中随机的布置当前游戏难度下应该产生的地雷总数,其主要用意在于不让玩家第一次就踩到地雷,这样 在某种程度上可以提高玩家游戏的气愤。具体实现如下所示: 判断地雷区是否处于可动作状态 If nd 标示动作图片的坐标 判断为左键且该方块为未探测状态 1 = 1 判断游戏是否等待启动 If 布置地雷 0 * ( 1) * ( 1) 判断数组中 (rX,非地雷及 非点选的方块坐标时 第 10 页 共 18 页 If = 0 0 9 nd = + 1 f f f f 戏 中 主要 模块的介绍与使用 标事件 在游戏过程中,我们利用鼠标所发出的信息了解游戏者的意图,进而作出相对应的动作。 在 以捕捉鼠标所按下或放开的按键为何、鼠标光标在该组件上的坐标及是否同时按下辅助键等。函数原型如下: 组件名称 _s _s _s _ x _y 组件名称 _s _s _s _ x _y 在参数列中, 意义如下: 1:左键 2:右键 倘若同时按下不止一个按键时,则传回数值为按键数值相加,例如同时按下左键及右键,则 为 1+2=3 第 11 页 共 18 页 在本游戏中,我们利用右键的 件来标示“已标示”方块,利用左键的 件,来标示游戏者准备按下的方块,再利用左键的 样的用意在于,假如游戏者发现按下的方块是错误的,此时只要不松开左键,同时按下右键,该方块就会被标示为“已标示”方块,若再松开左键,则该方块因为已成为“已标示”方块,所以就无法翻开。 在窗口的软件中,鼠标的应用是不可或缺的,但鼠标固然好用,如果程序设计不当,也可能造成使用者的不便。通常鼠标在软件的应用上经常使用 只 把 意就如同前面所提),只是为给使用者一个反悔的机会。 游戏的操作方面主要以鼠标为主,当鼠标指针对准未翻开的方块按下左键时即表示翻开方块 : 1 鼠标左键 If = 1 10) )f 当鼠标指针对准未翻开的方块按下右键时即表示标示或疑示地雷,反复按下右键则方块会以“未标示”“标示”“疑似”三者关系不断循环: 2 鼠标右键 If = 1 未探测 = 2 1 13) = 2 标示 = 3 1 14) = 3 疑似 = 1 9) 第 12 页 共 18 页 f 在 游戏设计上,我利用了两个二维数组分别记录地雷的分布情况及雷区表面探测情形,如图 5 和图 6 所示: 图 5标示地雷分布情况 图 6标示地雷探测情况 因为两个数组维数皆为 2,所以我们通过双循环做数据的对比工作。另外,当游戏玩家按下非地雷的方块时,程序必须自动将周边非地雷的方块翻开,这个动作我们也可以通过双循环的方式检查以按下的方块为中心与周边的 8 个方块所形成的 3*3 的二维数组,鼠标指针所指即是代表按下的方块,利用双循环 作数据的对比,不但速度快,而且在设计阶段,程序的架构也比较清楚。程序设计时双循环常常搭配 二维数组使用。 这里 先引入一个“递归”的概念,“递归” (单的说,就是一个程序能被自己所定义的语句调用。递归在程序设计上是一种重要的数据结构形态,通过递归程序的编写,在程序代码上会变得相当简洁,不过如果设计不当, 第 13 页 共 18 页 会造成无穷循环或堆迭溢满的情形,所以递归的程序中心必须含有 设计,以终止递归执行。 在游戏过程中,当游戏者按下非地雷方块时,方块会沿四周八个方向向外翻开非地雷的方块。 程序的执行方面必须判断:以按下方块为中心 ,检查周围八个方块是否为非地雷方块,若其中有一个方块是非地雷方块时,则又以其为中心,向外检查周围八个方块是否为非地雷方块,如此反复的执行即构成递归的使用条件。 前面已经提到,递归必须设计终止的条件判断,在本游戏的递归架构中,当判断方块的内容为数字时(即在非地雷方块周围),即立即停止递归程序。 递归其实也不是万能的,以本游戏做测试,当地雷区范围越大,且地雷数目不多时(一翻开非地雷方块,几乎全部方块都会翻开),执行递归就会变的非常缓慢,甚至造成堆迭溢满(不足)的情形,所以在游戏设计上必须考虑地雷区的大小,以免造 成执行时错误中断的情况发生。 代码部分如下所示: ub x _ y _ s 1 x - 1 To x + 1 y - 1 To y + 1 If = 0 0 0 = 8 = 0 10) ( 1 第 14 页 共 18 页 f f f 游戏难度的选择 这里我 设置了“初级”,“中级”,“高级”以及“自定义”四个不同的难度级别,“初级”,“中级”,“高级”中的雷区大小和地雷总数是已经设计好了的,如果玩家想要自己设置这些参数,可单击“游戏”“自定义”,然后在“设置”中输入行数,列数及地雷数,在这里我对行数及列 数做出了一个限定,及行数和列数的最大值分别为 24 和 30,当在设置地雷数的时候,如果地雷数大于或等于行数和列数的乘积,或者地雷数小于零,地雷数都将自动的转换为:地雷数 =(行数 (列数 戏的判断 戏成功完成 当在规定的时间内将所有的雷都正确的标示出来,游戏就会有一个弹出框提示你在多长时间内完成当前难度下的游戏。 还有一种情况便是当只剩下地雷未探测的时候,及雷区方块总数 地雷总数的话,游戏也将成功完成。 戏失败 当鼠标左键按下的方块为地雷方块事,地雷 将会被引爆,游戏立即结束。 当在设定时间内未探测完所有的地雷,地雷也将会引爆,对于这第二种行为,我们可以通过 件来加以控制。利用 件在固定时间即会触发时间的特性,在事件触发时便将计数值加一,直到判断计数值超过限定值时,即地雷引爆。具体代码如下所示: 定时器 1 时间计数显示 第 15 页 共 18 页 设定状态图示 999 = 0 设定状态图示 您探测地雷的时间已超过,地雷已引爆。 , , 超时 f 游戏测试结果 在程序代码基本完成后,经过 不断的调试与修改,最后测试本次所设计的 扫雷游戏能够正常运行,在基本功能与画面上与 带的扫雷游戏没有太大差别,没有出现明显的错误和漏洞,但是在一些细节方面仍然需要完善,比如在游戏中可以加入一些声音的提示,在游戏完成和失败的时候可以弹出一些小的画,还有就是可以加入一个扫雷英雄榜等等。总的来说本次设计在功能上已经基本达到要求,其他细节方面有待以后完善。 结 论 毕业设计是本科学习阶段一次非常难得的理论与实际相结合的机会,通过这次比较完整的一个程序的设计,我摆脱了单纯的理论知识学习状 态,和实际设计的结合锻炼了我的综合运用所学的专业基础知识,解决实际问题的能力,同时也提高我查阅文献资料、对程序整体的把握等其他能力水平,而且通过对整体的掌控,对局部的取舍,以及对细节的斟酌处理,都使我的能力得到了锻炼,经验得到了丰富。这是我们都希望看到的也正是我们进行毕业设计的目的所在。 虽然毕业设计内容繁多,过程繁琐但我的收获却更加丰富。各种组件的运用,各种算法的应用,各种控件的利用我都是随着设计的不断深入而不断熟悉并逐步掌握的。和老师以及同学的沟通交流更使我对程序整体的规划与设计有了新的认识也对自己提出 了新的要求。 提高是有限的但提高也是全面的,正是这一次设计让我积累了许多实际经验,也必然会让我在未来的工作学习中表现出更高的应变能力和理解力。 顺利如期的完成本
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:【精品】VB扫雷游戏的设计与开发(论文+答辩PPT+系统)
链接地址:https://www.renrendoc.com/p-1639292.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2025  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!