C++语言课程设计报告MFC设计图书管理系统.doc
《C++语言课程设计报告MFC设计图书管理系统.doc》由会员分享,可在线阅读,更多相关《C++语言课程设计报告MFC设计图书管理系统.doc(136页珍藏版)》请在咨信网上搜索。
- . XX理工大学 聋人工学院 ?C++语言课程设计? 专业:网络工程 年级:2015级一班 XX:志冲 学号: 成绩: 完成日期:20161220 - . 可修编. 目录 第一章 简介1 1.1 设计题目1 1.2 指导教师1 第二章?图书管理系统?设计意义2 2.1 设计容概述2 2.2需求分析2 2.3 设计意义2 第三章总体设计3 3.1 系统运行环境3 3.2 系统构造图3 3.3 系统各模块的功能4 3.4 对象数据构造7 第四章详细设计8 4.1程序源代码8 4.1.1登陆模块8 4.1.2注册模块11 4.1.3主菜单模块13 4.1.4编辑模块17 4.1.5查询模块27 4.1.6浏览模块34 4.1.7设置模块39 4.1.8组合框模块41 4.1.9图书信息模块43 4.1.10 资源文件45 4.2系统测试55 4.2.1登陆对话框55 4.2.2编辑对话框58 4.2.3浏览对话框62 4.2.4查询对话框66 4.2.5设置对话框71 4.2.6退出73 4.2.7测试完毕运行73 4.3问题分析73 第五章结论80 参考文献81 第一章 简介 1.1 设计题目 图书管理系统 1.2 指导教师 第二章?图书管理系统?设计意义 2.1 设计容概述 本课程设计图书管理系统,必修要满足使用方便、操作灵活和数据平安等设计需求。本系统在设计时应满足以下几个目标: 1.采用人机对话的操作方式,界面设计美观友好,操作灵活、方便、快捷、准确数据保存平安可靠。 2.实现对图书信息的管理功能。 3.系统运行稳定、平安可靠。 2.2需求分析 信息技术的飞速开展给图书企业的管理带来了全新的变革.采用图书管理系统对图书企业的经营运作进展全程管理.不仅可以使企业摆脱以往人工管理产生的一系列问题,而且可以提高管理效率、降低管理本钱、增加经济效益。通过管理系统对图书企业的开展进展规划,可以收集大量关键可靠的数据。企业决策层分析这些数据,做出合理决策,及时调整,使之能够更好地遵循市场的销售规律,适应市场的变化,从而让企业能够在剧烈的行业竞争中占据一席之地。 2.3 设计意义 1.有助于加深我们对C++程序设计这门课程的理解,我们在课堂上学的都是根底理论知识,对于如何用程序语言来描述所学知识还是有一定难度。通过课程设计,我们可以真正理解其涵。 2.有利于我们逻辑思维的锻炼,程序设计能直接有效地训练学生的创新思维、培养分析问题、解决问题能力。即使是一个简单的程序,依然需要学生有条不理的构思。 3.有利于培养严谨认真的学习态度,在程序设计过程里,当我们输入程序代码的时候,如果不够认真或细心,那么可能就导致语法错误,从而无法得出运行结果。那么,这个我们反复调试,反复修改的过程,其实也是对我们认真严谨治学的一个锻炼。 第三章 总体设计 3.1 系统运行环境 1.硬件环境 PC机 2.软件环境 操作系统:Windows 10 开发工具:Visual studio 2010 3.2 系统构造图 图书管理系统构造图如图3.1所以。该系统包括:添加、修改、删除、查询、浏览等。 图 3.1 系统的功能模块图 3.3系统各模块的功能 表3.2 主要类介绍 类名 派生自 说明 CtianjinApp CWinApp 为初始化应用程序Window应用程序基类的派生类 Login CDialog 用户登录对话框 Register CDialog 注册对话框 CtianjinDlg CDialog 主程序界面对话框 sta CStatic 由于直接用CStatic创立的静态文本控件的样式是默认,但不是理想的效果,故再次继承CStatic,可以重新改变样式。 button CButton 由于直接用CButton创立的按钮控件的样式是默认,但不是理想的效果,故再次继承CButton,可以重新改变样式。 Explore CDialog 浏览对话框 box CboBox 由于直接用CboBox创立的组合框控件的样式是默认,但不是理想的效果,故再次继承CboBox,可以重新改变样式。 entering CDialog 编辑对话框 EditPrice CEdit 由于直接用CEdit创立的编辑框的功能还不够,所以再次继承CEdit,可以多加功能-限制输入字符 query CDialog 查询对话框 Setting CDialog 设置对话框 About CDialog 关于对话框 表3.3 主要函数介绍 源文件 函数名称 功能描述 Explore.cpp OnInitDialog OpenFile OnClickedButton1 OnClickedButton2 ExchangeBook 对对话框进展初始化处理 翻开文件函数 响应“升序〞按钮实现排序该图书信息 响应“升序〞按钮实现排序该图书信息 交换各对象的数据 表3.4 主要函数介绍 源文件 函数名称 功能描述 CtianjinDlg.cpp OnInitDialog OnPaint OnQueryDragIcon OnTimer UpdateFile OnExit OnEnter OnAbout OnQuery OnSetting OnExplore 对对话框进展初始化处理 对对话框绘制局部应用窗口 系统获取鼠标图标 用于实现定时控制功能 用于实现更新文件来计算收了几本书 响应“退出〞按钮实现退出本程序 响应“编辑〞按钮实现启动编辑对话框 响应“关于〞按钮实现启动关于对话框 响应“查询〞按钮实现启动查询对话框 响应“设置〞按钮实现启动设置对话框 响应“浏览〞按钮实现启动浏览对话框 表3.5 主要函数介绍 源文件 函数名称 功能描述 Entering.cpp OnInitDialog OnCtlColor OnBnClickedOk Check Input OnClose OnLvnItemchangedList1 OnBnClickedOk2 OnBnClickedOk3 OnLvnColumnclickList1 OnNMClickList1 OnBnClickedButton1 对对话框进展初始化处理 控件窗口函数 用于画出控件菜单处理 添加记录信息 检查输入的容是否为空 输入记录信息 关闭该对话框 某个项已经发生变化 响应“删除〞按钮实现删除该图书信息 响应“修改〞按钮实现修改该图书信息 单击列,用于勾选全部 当鼠标单击列表视图控件时产生 响应“清空〞按钮实现修改该图书信息 表3.6 主要函数介绍 源文件 函数名称 功能描述 query.cpp OnInitDialog OnBnClickedRadio1 OnBnClickedRadio2 OnBnClickedRadio3 OnBnClickedRadio4 OnBnClickedRadio5 OnBnClickedButton1 QueryNum QueryName QueryAuthor QueryPress QueryAny OpenFile Tip insert OnBnClickedButton2 对对话框进展初始化处理 响应“书号〞按钮实现选择该方式查询 响应“书名〞按钮实现选择该方式查询 响应“作者〞按钮实现选择该方式查询 响应“〞按钮实现选择该方式查询 响应“任何容〞按钮实现选择该方式查询 关闭该对话框 查询书号函数 查询书名函数 查询作者函数 查询函数 查询任何函数 翻开文件 提示用于告诉用户找到了多少本 将已找到的几本书插入在显示上 响应“查询〞按钮实现根据该方式查询 3.4 对象数据构造 每个对象记录着每本书的信息,为了保护数据平安,故把其的这些成员变量声明为private,就是说在类外的话,不能直接调用对象的成员变量名来赋值或者获取其值,这就到达了保护数据,但是在某个时候遇到数据不对可能需要修改,这时就要加成员函数来修改或者获取,而且把成员函数声明为public,由于在类外需要正常调用,故声明为公开。其表如下。 表3.7 主要变量介绍 变量名 类型 功能描述 Name Num Author Press Time Price Char Char Char Char Char Double 书名 书号 作者 时间 价格 表3.8 主要函数介绍 源文件 函数名称 功能描述 book.cpp SetName SetNum SetAuthor SetPress SetTime SetPrice GetName GetNum GetAuthor GetPress GetTime GetPrice 设置当前对象的成员变量name的值 设置当前对象的成员变量num的值 设置当前对象的成员变量Author的值 设置当前对象的成员变量Press的值 设置当前对象的成员变量Time的值 设置当前对象的成员变量Price的值 获取当前对象的成员变量name的值 获取当前对象的成员变量Num的值 获取当前对象的成员变量Author的值 获取当前对象的成员变量Press的值 获取当前对象的成员变量Time的值 获取当前对象的成员变量Price的值 第四章 详细设计 4.1程序源代码 4.1.1登陆模块 Login.h #pragma once #include"tianjinDlg.h" #include "afxwin.h" // Login 对话框 class Login : public CDialog { DECLARE_DYNAMIC(Login) int a; public: Login(CWnd* pParent = NULL); // 标准构造函数 virtual ~Login(); // 对话框数据 enum { IDD = IDD_LOGIN }; protected: virtual void DoDataExchange(CDataExchange* pDX); CtianjinDlg dlg; DECLARE_MESSAGE_MAP() public: virtual BOOL OnInitDialog(); afx_msg void OnClose(); CString user; CString password; afx_msg void OnBnClickedOk(); CButton regis; afx_msg void OnBnClickedButton1(); Login.cpp #include "stdafx.h" #include "tianjin.h" #include "Login.h" #include "afxdialogex.h" #include "Register.h" IMPLEMENT_DYNAMIC(Login, CDialog) Login::Login(CWnd* pParent /*=NULL*/) : CDialog(Login::IDD, pParent) , user(_T("")) , password(_T("")) { } Login::~Login() { } void Login::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); DDX_Text(pDX, IDC_EDIT3, user); DDX_Text(pDX, IDC_EDIT4, password); DDX_Control(pDX, IDC_BUTTON1, regis); } BEGIN_MESSAGE_MAP(Login, CDialog) ON_WM_CLOSE() ON_BN_CLICKED(IDOK, &Login::OnBnClickedOk) ON_BN_CLICKED(IDC_BUTTON1, &Login::OnBnClickedButton1) END_MESSAGE_MAP() BOOL Login::OnInitDialog() { CDialog::OnInitDialog(); a=0;//初始化a的值为0 用于判断该值是否退出本程序 当输入密码错误,就使该a的值增加1 CRect r;//矩形的类,数据成员是 矩形左上角的x的坐标,矩形左上角Y的坐标,矩形右下角x的坐标,矩形右下角Y的坐标 CString user; this->GetClientRect(&r);//是获得窗口的当前的客户区,把各坐标值保存在r对象。 this->MoveWindow(600,300,r.right,r.bottom);//根据上面获得窗口的大小,来调整并且移动。 GetPrivateProfileString("login","user","NULL",user.GetBuffer(20),20,"./setting.ini"); //从setting.ini配置文件中的login节名中获取该user键名的值并保存在user的值,如果找不到该键名,那么保存第三个参 //数的值 即默认的值 表示未注册的账号,反之 找到了该值,表示已经注册了 if(user!="NULL"){//用于判断上面获得的值是否已经注册过 如注册过,那么执行if〔〕后边的语句 regis.EnableWindow(0);//在该函数的参数赋值为0 表示制止指定的控件承受鼠标和键盘的输入 由于该已经注册过的。 regis.SetWindowTextA("已注册");//指定该控件的容设为 〞已注册"用于提示 } return TRUE; } void Login::OnClose() { CDialog::OnClose(); } void Login::OnBnClickedOk() { this->UpdateData(1);//将各控件中的数据保存到相应的变量分别为〞user“〞 password“ if(!user.IsEmpty()&&!password.IsEmpty())//检查该各变量的值是否为空,如该值为空,就执行else后边的语句 { CString user1,password1;//定义两个字符串类变量 用于从配置文件的注册过的用户及密码的值保存在该变量的 GetPrivateProfileString("login","user","NULL",user1.GetBuffer(20),20,"./setting.ini");//从本身程序的当前的setting.ini配置 //文件中的login节名中获取该user键名的值并保存在user1的值,如果找不到该键名,那么保存默认值为〞NULL“ GetPrivateProfileString("login","password","NULL",password1.GetBuffer(20),20,"./setting.ini");//如同上面的方法 if(user==user1&&password==password1)//比照各值是否一致,满足此条件表示该用户名及密码都是正确,可以登陆,即执行if〔〕后边的语句 { this->ShowWindow(SW_HIDE);//把该对话框的显示方式为隐藏 dlg.DoModal();//启动主窗口的对话框 CDialog::OnOK(); } else{ a++;//密码错误次数 if(a>3)//如超过3次的错误密码就执行if〔〕后边的语句 { CDialog::OnCancel(); return; //调用关闭该对话框的函数 } CString d; d.Format("用户名或者密码错误%d次 超过三次错误即将自动退出",a); MessageBox(d,"登陆提示",MB_OK|MB_ICONWARNING);//用于提示密码错误 以防止令人觉得这程序有问题 } } else MessageBox("用户名或者密码的字符串为空","登陆提示",MB_OK|MB_ICONWARNING);//当该值为空,那么执行该语句 用于提示。 } void Login::OnBnClickedButton1() { Register dialog;//定义注册对话框的对象变量 dialog.DoModal();//启动 注册对话框 } }; 4.1.2注册模块 Register.h #pragma once #include "afxwin.h" // Register 对话框 class Register : public CDialog { DECLARE_DYNAMIC(Register) public: Register(CWnd* pParent = NULL); // 标准构造函数 virtual ~Register(); // 对话框数据 enum { IDD = IDD_REGISTER }; protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持 DECLARE_MESSAGE_MAP() public: afx_msg void OnBnClickedOk(); CString user; CString password; CString password1; }; Register.cpp #include "stdafx.h" #include "tianjin.h" #include "Register.h" #include "afxdialogex.h" // Register 对话框 IMPLEMENT_DYNAMIC(Register, CDialog) Register::Register(CWnd* pParent /*=NULL*/) : CDialog(Register::IDD, pParent) , user(_T("")) , password(_T("")) , password1(_T("")) { } Register::~Register() { } void Register::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); DDX_Text(pDX, IDC_EDIT1, user); DDX_Text(pDX, IDC_EDIT6, password); DDX_Text(pDX, IDC_EDIT3, password1); } BEGIN_MESSAGE_MAP(Register, CDialog) ON_BN_CLICKED(IDOK, &Register::OnBnClickedOk) END_MESSAGE_MAP() void Register::OnBnClickedOk() { this->UpdateData();//默认值是TRUE,即从控件传给变量 if(!user.IsEmpty()&&!password.IsEmpty()&&!password1.IsEmpty())//各变量的字符串是否为空,如都不为空,那么执行if〔〕后边的语句继续注册 { if(password==password1)//新密码与第二次新密码比照下,如相等,那么继续执行注册,反之不继续注册 {if(IDOK==MessageBox("确定要注册该账号吗?","注册提示",MB_OKCANCEL| MB_ICONQUESTION ))//输出提示 是否要确定注册,如点击确认返回值为IDOK { WritePrivateProfileString("login","user",user,"./setting.ini"); ////向该setting.ini配置文件中的login节名中设置该user键名的值为user的值 WritePrivateProfileString("login","password",password,"./setting.ini"); HWND button; //定义窗口句柄 this->GetParent()->GetDlgItem(IDC_BUTTON1,&button);//获取当前窗口的父窗口句柄〔登陆对话框〕,然后通过父窗口句柄获取指定参数ID为IDC_BUTTON1的子元素的句柄并绑定button窗口句柄 ::SetWindowTextA(button,"已注册");//改变指定button窗口句柄的文本容为"已注册"。 ::EnableWindow(button,0);//第二个参数的值为0表示制止指定的控件承受鼠标和键盘的输入 MessageBox("已经成功注册该账号:"+user+"!","注册提示",MB_OK| MB_ICONASTERISK );//注册成功输出提示 CDialog::OnCancel(); }} else MessageBox("新密码与第二次新密码不一致 请注意输入正确!","密码提示",MB_OK|MB_ICONEXCLAMATION ); } else MessageBox("用户名或者密码的字符串为空","注册提示",MB_OK|MB_ICONWARNING); } 4.1.3主菜单模块 tianjinDlg.h #pragma once #include "button.h" #include "sta.h" #include"entering.h" #include"query.h" #include"Setting.h" #include"Explore.h" // CtianjinDlg 对话框 class CtianjinDlg : public CDialogEx { // 构造 public: CtianjinDlg(CWnd* pParent = NULL); // 标准构造函数 // 对话框数据 enum { IDD = IDD_TIANJIN_DIALOG }; protected: virtual void DoDataExchange(CDataExchange* pDX); // 实现 protected: HICON m_hIcon; CToolBar toolbar; CStatusBar statusbar; CImageList toolimag; CImageList toolhotimag; button but2; int a; int b; virtual BOOL OnInitDialog(); afx_msg void OnPaint(); afx_msg HCURSOR OnQueryDragIcon(); DECLARE_MESSAGE_MAP() public: afx_msg void OnTimer(UINT_PTR nIDEvent); button but1; void UpdateFile(); sta stat,stat1; afx_msg void OnExit(); afx_msg void OnEnter(); afx_msg void OnAbout(); protected: public: afx_msg void OnQuery(); afx_msg void OnSetting(); afx_msg void OnExplore(); }; tianjinDlg.cpp #include "stdafx.h" #include "tianjin.h" #include "tianjinDlg.h" #include "afxdialogex.h" #include"About.h" #ifdef _DEBUG #define new DEBUG_NEW #endif CtianjinDlg::CtianjinDlg(CWnd* pParent /*=NULL*/) : CDialogEx(CtianjinDlg::IDD, pParent) { m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME); } void CtianjinDlg::DoDataExchange(CDataExchange* pDX) { CDialogEx::DoDataExchange(pDX); DDX_Control(pDX, IDOK, but1); DDX_Control(pDX, TIC, stat); } BEGIN_MESSAGE_MAP(CtianjinDlg, CDialogEx) ON_WM_PAINT() ON_WM_QUERYDRAGICON() ON_WM_TIMER() ON_MAND(1006, &CtianjinDlg::OnExit) ON_MAND(1001, &CtianjinDlg::OnEnter) ON_MAND(1003, &CtianjinDlg::OnQuery) ON_MAND(1004, &CtianjinDlg::OnSetting) ON_MAND(1005, &CtianjinDlg::OnAbout) ON_MAND(1002, &CtianjinDlg::OnExplore) END_MESSAGE_MAP() BOOL CtianjinDlg::OnInitDialog() { CDialogEx::OnInitDialog(); CBitmap bit[7]; bit[0].LoadBitmapA(IDB_BITMAP1); bit[1].LoadBitmapA(IDB_BITMAP2); bit[2].LoadBitmapA(IDB_BITMAP3); bit[3].LoadBitmapA(IDB_BITMAP4); bit[4].LoadBitmapA(IDB_BITMAP5); bit[5].LoadBitmapA(IDB_BITMAP6); bit[6].LoadBitmapA(IDB_BITMAP8); toolimag.Create(70,50,ILC_COLOR|ILC_MASK,0,0); for(int i=0;i<6;i++) toolimag.Add(&bit[i],ILC_MASK); toolhotimag.Create(58,60,ILC_COLOR|ILC_MASK,0,0); toolhotimag.Add(&bit[6],ILC_COLOR16); toolbar.Create(this); UINT buttons[6]={1001,1002,1003,1004,1005,1006}; toolbar.SetButtons(buttons,6); char buttontext[][7]={"编辑","浏览","查询","设置","关于","退出"}; for(int i=0;i<6;i++) toolbar.SetButtonText(i,buttontext[i]); toolbar.GetToolBarCtrl().SetImageList(&toolimag); toolbar.GetToolBarCtrl().SetHotImageList(&toolhotimag); toolbar.SetSizes(CSize(80,80),CSize(70,50)); toolbar.GetToolBarCtrl().SetStyle(CCS_TOP|TBSTYLE_FLAT); statusbar.Create(this); UINT pens[3]={100,101,102}; statusbar.SetIndicators(pens,3); statusbar.SetPaneText(0," 志冲"); UpdateFile(); statusbar.SetPaneText(2,CTime::GetCurrentTime().Format("%Y:%m:%d:%H:%M:%S")); for(int i=0;i<3;i++) statusbar.SetPaneInfo(i,pens[i],SBPS_POPOUT,); a=10; b=0; SetTimer(0,500,NULL); this->RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0); return TRUE; // 除非将焦点设置到控件,否那么返回 TRUE } void CtianjinDlg::OnPaint() { if (IsIconic()) { } else { CRect dialogrect; this->GetClientRect(dialogrect); CDC pic; CBitmap pic1; BITMAP info; pic1.LoadBitmapA(IDB_BITMAP7); pic1.GetBitmap(&info); CPaintDC dc(this); pic.CreatepatibleDC(&dc); pic.SelectObject(&pic1); dc.StretchBlt(0,0,dialogrect.right,dialogrect.bottom,&pic,0,0,info.bmWidth,info.bmHeight,SRCCOPY); CDialogEx::OnPaint(); } } HCURSOR CtianjinDlg::OnQueryDragIcon() { return static_cast<HCURSOR>(m_hIcon); } void CtianjinDlg::OnTimer(UINT_PTR nIDEvent) {CRect dialogrect; this->GetClientRect(dialogrect); statusbar.SetPaneText(2,CTime::GetCurrentTime().Format("%Y:%m:%d:%H:%M:%S")); stat.MoveWindow(a,dialogrect.bottom-402,260,50); if(a>=dialogrect.right-270) b=1; else if(a<=50) b=0; if(b==0) a+=20; else a-=20; CDialogEx::OnTimer(nIDEvent); } void CtianjinDlg::OnExit() { CDialogEx::OnCancel(); } void CtianjinDlg::OnEnter() {entering enter; enter.DoModal(); UpdateFile(); } void CtianjinDlg::UpdateFile(){ CFile file("data.txt",CFile::modeRead|CFile::modeNoTruncate|CFile::modeCreate); CString stat; stat.Format("已经收录%d本的书",file.GetLength()/95); file.Close(); statusbar.SetPaneText(1, stat); } void CtianjinDlg::OnQuery() {query quer; quer.DoModal(); } void CtianjinDlg::OnSetting() {Setting set; set.DoModal(); } void CtianjinDlg::OnExplore() { Explore explore; explore.DoModal(); } void CtianjinDlg::OnAbout() { About aboutdlg; aboutdlg.DoModal(); } 4.1.4编辑模块 Entering.h #pragma once #include "afxcmn.h" #include "afxwin.h" #include "editprice.h" // entering 对话框 class entering : public CDialog { DECLARE_DYNAMIC(entering) public: entering(CWnd* pParent = NULL); // 标准构造函数 virtual ~entering(); // 对话框数据 enum { IDD = IDD_ENTERING }; protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持 DECLARE_MESSAGE_MAP() public: CListCtrl listctrl;//列表框控件对象 virtual BOOL OnInitDialog();//初始化函数 afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);//控件窗口函数 用于画出控件 CboBox year,mo,day; char *name,*num,*autho,*pr,*time,*price; afx_msg void OnBnClickedOk();- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 语言 课程设计 报告 MFC 设计 图书 管理 系统
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文