




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、課程設(shè)計(jì)報(bào)告課程名稱 面向?qū)ο蟪绦蛟O(shè)計(jì)設(shè)計(jì)題目 仿Windows電子計(jì)算器的設(shè)計(jì)系別 機(jī)電系班級(jí)學(xué)生姓名學(xué)號(hào)任課老師 完成時(shí)間2009.12.23 設(shè)計(jì)任務(wù) 起至日期:2009.12.14設(shè)計(jì)題目:仿Windows電子計(jì)算器的設(shè)計(jì)設(shè)計(jì)要求:設(shè)計(jì)要求:1、 設(shè)計(jì)一電子計(jì)算器,功能類似于Windows自帶的電子計(jì)算器;2、 基于Visual C+開發(fā)平臺(tái);3、 給出計(jì)算器相關(guān)算法的設(shè)計(jì)思想及流程圖;4、 給出電子計(jì)算器實(shí)現(xiàn)的Visual C+源代碼;5、 給出運(yùn)行測(cè)試結(jié)果,提交源代碼包。仿Windows電子計(jì)算器的設(shè)計(jì)一、 設(shè)計(jì)任務(wù)與要求1、 設(shè)計(jì)一電子計(jì)算器,功能類似于Windows自帶的電子計(jì)
2、算器;2、 基于Visual C+開發(fā)平臺(tái);3、 給出計(jì)算器相關(guān)算法的設(shè)計(jì)思想及流程圖;4、 給出電子計(jì)算器實(shí)現(xiàn)的Visual C+源代碼;5、 給出運(yùn)行測(cè)試結(jié)果,提交源代碼包。二、 設(shè)計(jì)思想程序簡(jiǎn)介: 本程序在VS.NET2005的c+語(yǔ)言中的MFC開發(fā)制作,經(jīng)測(cè)試(使用動(dòng)態(tài)dll庫(kù))在同等環(huán)境(VS.NET2005)下可以正常運(yùn)行執(zhí)行文件完成計(jì)算器功能。使用靜態(tài)dll庫(kù)時(shí)候,不改變執(zhí)行程序路徑可以正常運(yùn)行,但移動(dòng)到其他位置的執(zhí)行文件運(yùn)行會(huì)缺少3D按鈕效果,其他功能不變。但在VC6.0和.NET2003環(huán)境下不能直接使用(提示缺少庫(kù)文件)。解決辦法是使用installshield制作軟件安裝
3、包。在沒有裝有VS.NET2005的機(jī)器上可以用安裝包安裝該計(jì)算器,該安裝包會(huì)在桌面放置一程序快捷方式和卸載圖標(biāo)。本軟件不寫注冊(cè)表。程序基本實(shí)現(xiàn)思路:1當(dāng)前輸入的數(shù)據(jù),和數(shù)據(jù)處理過(guò)程均由變量n完成。因?yàn)樽疃嗍?元運(yùn)算,另設(shè)一變量n_2表示第2個(gè)數(shù),需要時(shí)由n_2=n賦值。2數(shù)字錄入部?jī)?nèi)容相似,首先建立一個(gè)函數(shù)inum(),負(fù)責(zé)處理所輸入的數(shù)字,按下相應(yīng)數(shù)字鍵時(shí)候,調(diào)用inum()完成數(shù)字的輸入和顯示。3數(shù)據(jù)計(jì)算部分.由函數(shù)operation(char ope),通過(guò)選擇所按下的運(yùn)算符(該函數(shù)的變量)來(lái)完成相應(yīng)的計(jì)算并顯示。由于運(yùn)算符分為單元運(yùn)算和雙元 所以具有類似性,分開處理。4小數(shù)輸入。按下
4、小數(shù)點(diǎn)后,變量setxiaoshu=true,激活小數(shù)輸入功能。inum()做出輸入小數(shù)的判斷并輸出預(yù)期數(shù)。5正負(fù)號(hào)的改變可以通過(guò)每按下該鍵后執(zhí)行n=-n來(lái)執(zhí)行。對(duì)于負(fù)數(shù)的錄入功能,也由inum()做出判斷,完成正確的負(fù)數(shù)錄入過(guò)程。6等號(hào)的實(shí)現(xiàn)調(diào)用operation(operate),完成相應(yīng)運(yùn)算。7刪除一個(gè)字符,用n=long(n/10)的思路來(lái)完成,由于long的范圍,所以刪除只能實(shí)現(xiàn)10位以內(nèi)的刪除。8CE和C鍵。CE負(fù)責(zé)清楚欲輸入的第2個(gè)數(shù)據(jù)的相關(guān)變量,C清空所有變量,重置計(jì)算器。三、 模塊設(shè)計(jì)及程序清單根據(jù)上述設(shè)想編寫程序,主要代碼如下:/ CalculateDlg.cpp : im
5、plementation file/#include "stdafx.h"#include "Calculate.h"#include "CalculateDlg.h"#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE = _FILE_;#endif/ CAboutDlg dialog used for App Aboutclass CAboutDlg : public CDialogpublic:CAboutDlg();/ Dialog Da
6、ta/AFX_DATA(CAboutDlg)enum IDD = IDD_ABOUTBOX ;/AFX_DATA/ ClassWizard generated virtual function overrides/AFX_VIRTUAL(CAboutDlg)protected:virtual void DoDataExchange(CDataExchange* pDX); / DDX/DDV support/AFX_VIRTUAL/ Implementationprotected:/AFX_MSG(CAboutDlg)/AFX_MSGDECLARE_MESSAGE_MAP();CAboutDl
7、g:CAboutDlg() : CDialog(CAboutDlg:IDD)/AFX_DATA_INIT(CAboutDlg)/AFX_DATA_INITvoid CAboutDlg:DoDataExchange(CDataExchange* pDX)CDialog:DoDataExchange(pDX);/AFX_DATA_MAP(CAboutDlg)/AFX_DATA_MAPBEGIN_MESSAGE_MAP(CAboutDlg, CDialog)/AFX_MSG_MAP(CAboutDlg)/ No message handlers/AFX_MSG_MAPEND_MESSAGE_MAP(
8、)/ CCalculateDlg dialogCCalculateDlg:CCalculateDlg(CWnd* pParent /*=NULL*/): CDialog(CCalculateDlg:IDD, pParent)/AFX_DATA_INIT(CCalculateDlg)/ NOTE: the ClassWizard will add member initialization here/AFX_DATA_INIT/ Note that LoadIcon does not require a subsequent DestroyIcon in Win32m_hIcon = AfxGe
9、tApp()->LoadIcon(IDR_MAINFRAME);m_str=""m_db1=0;m_db2=0;m_bOper=FALSE;m_chOperator=' 'm_store=0;m_b2=FALSE;void CCalculateDlg:DoDataExchange(CDataExchange* pDX)CDialog:DoDataExchange(pDX);/AFX_DATA_MAP(CCalculateDlg)/ NOTE: the ClassWizard will add DDX and DDV calls here/AFX_DAT
10、A_MAPBEGIN_MESSAGE_MAP(CCalculateDlg, CDialog)/AFX_MSG_MAP(CCalculateDlg)ON_WM_SYSCOMMAND()ON_WM_PAINT()ON_WM_QUERYDRAGICON()ON_BN_CLICKED(IDC_BTN0, OnBtn0)ON_BN_CLICKED(IDC_BTN1, OnBtn1)ON_BN_CLICKED(IDC_BTN2, OnBtn2)ON_BN_CLICKED(IDC_BTN3, OnBtn3)ON_BN_CLICKED(IDC_BTN4, OnBtn4)ON_BN_CLICKED(IDC_BT
11、N5, OnBtn5)ON_BN_CLICKED(IDC_BTN6, OnBtn6)ON_BN_CLICKED(IDC_BTN7, OnBtn7)ON_BN_CLICKED(IDC_BTN8, OnBtn8)ON_BN_CLICKED(IDC_BTN9, OnBtn9)ON_BN_CLICKED(IDC_BTN_DIVIDE, OnBtnDivide)ON_BN_CLICKED(IDC_BTN_MULTIPLY, OnBtnMultiply)ON_BN_CLICKED(IDC_BTN_MINUS, OnBtnMinus)ON_BN_CLICKED(IDC_BTN_ADD, OnBtnAdd)O
12、N_BN_CLICKED(IDC_BTN_EQUAL, OnBtnEqual)ON_BN_CLICKED(IDC_BTN_DOT, OnBtnDot)ON_BN_CLICKED(IDC_BTN_SQRT, OnBtnSqrt)ON_BN_CLICKED(IDC_BTN_REC, OnBtnRec)ON_BN_CLICKED(IDC_BTN_NEGATIVE, OnBtnNegative)ON_BN_CLICKED(IDC_BTN_MC, OnBtnMc)ON_BN_CLICKED(IDC_BTN_MPLUS, OnBtnMplus)ON_BN_CLICKED(IDC_BTN_MR, OnBtn
13、Mr)ON_BN_CLICKED(IDC_BTN_MS, OnBtnMs)ON_BN_CLICKED(IDC_BTN_BACKSPACE, OnBtnBackspace)ON_BN_CLICKED(IDC_BTN_CE, OnBtnCe)ON_BN_CLICKED(IDC_BTN_C, OnBtnC)/AFX_MSG_MAPEND_MESSAGE_MAP()/ CCalculateDlg message handlersBOOL CCalculateDlg:OnInitDialog()CDialog:OnInitDialog();/ Add "About." menu it
14、em to system menu./ IDM_ABOUTBOX must be in the system command range.ASSERT(IDM_ABOUTBOX & 0xFFF0) = IDM_ABOUTBOX);ASSERT(IDM_ABOUTBOX < 0xF000);CMenu* pSysMenu = GetSystemMenu(FALSE);if (pSysMenu != NULL)CString strAboutMenu;strAboutMenu.LoadString(IDS_ABOUTBOX);if (!strAboutMenu.IsEmpty()pS
15、ysMenu->AppendMenu(MF_SEPARATOR);pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);/ Set the icon for this dialog. The framework does this automatically/ when the application's main window is not a dialogSetIcon(m_hIcon, TRUE);/ Set big iconSetIcon(m_hIcon, FALSE);/ Set small ico
16、n/ TODO: Add extra initialization hereSetDlgItemText(IDC_EDIT_DISPLAY,"0");return TRUE; / return TRUE unless you set the focus to a controlvoid CCalculateDlg:OnSysCommand(UINT nID, LPARAM lParam)if (nID & 0xFFF0) = IDM_ABOUTBOX)CAboutDlg dlgAbout;dlgAbout.DoModal();elseCDialog:OnSysCom
17、mand(nID, lParam);/ If you add a minimize button to your dialog, you will need the code below/ to draw the icon. For MFC applications using the document/view model,/ this is automatically done for you by the framework.void CCalculateDlg:OnPaint() if (IsIconic()CPaintDC dc(this); / device context for
18、 paintingSendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);/ Center icon in client rectangleint cxIcon = GetSystemMetrics(SM_CXICON);int cyIcon = GetSystemMetrics(SM_CYICON);CRect rect;GetClientRect(&rect);int x = (rect.Width() - cxIcon + 1) / 2;int y = (rect.Height() - cyIcon + 1) / 2
19、;/ Draw the icondc.DrawIcon(x, y, m_hIcon);elseCDialog:OnPaint();/ The system calls this to obtain the cursor to display while the user drags/ the minimized window.HCURSOR CCalculateDlg:OnQueryDragIcon()return (HCURSOR) m_hIcon;void CCalculateDlg:OnBtn0() / TODO: Add your control notification handle
20、r code hereif(m_str="0")m_str.Empty();m_str+="0"SetDlgItemText(IDC_EDIT_DISPLAY,m_str);if(m_bOper)m_b2=TRUE;void CCalculateDlg:OnBtn1() / TODO: Add your control notification handler code hereif(m_str="0")m_str.Empty();m_str+="1"SetDlgItemText(IDC_EDIT_DISPLAY,
21、m_str);if(m_bOper)m_b2=TRUE;void CCalculateDlg:OnBtn2() / TODO: Add your control notification handler code hereif(m_str="0")m_str.Empty();m_str+="2"SetDlgItemText(IDC_EDIT_DISPLAY,m_str);if(m_bOper)m_b2=TRUE;void CCalculateDlg:OnBtn3() / TODO: Add your control notification handle
22、r code hereif(m_str="0")m_str.Empty();m_str+="3"SetDlgItemText(IDC_EDIT_DISPLAY,m_str);if(m_bOper)m_b2=TRUE;void CCalculateDlg:OnBtn4() / TODO: Add your control notification handler code hereif(m_str="0")m_str.Empty();m_str+="4"SetDlgItemText(IDC_EDIT_DISPLAY,
23、m_str);if(m_bOper)m_b2=TRUE;void CCalculateDlg:OnBtn5() / TODO: Add your control notification handler code hereif(m_str="0")m_str.Empty();m_str+="5"SetDlgItemText(IDC_EDIT_DISPLAY,m_str);if(m_bOper)m_b2=TRUE;void CCalculateDlg:OnBtn6() / TODO: Add your control notification handle
24、r code hereif(m_str="0")m_str.Empty();m_str+="6"SetDlgItemText(IDC_EDIT_DISPLAY,m_str);if(m_bOper)m_b2=TRUE;void CCalculateDlg:OnBtn7() / TODO: Add your control notification handler code hereif(m_str="0")m_str.Empty();m_str+="7"SetDlgItemText(IDC_EDIT_DISPLAY,
25、m_str);if(m_bOper)m_b2=TRUE;void CCalculateDlg:OnBtn8() / TODO: Add your control notification handler code hereif(m_str="0")m_str.Empty();m_str+="8"SetDlgItemText(IDC_EDIT_DISPLAY,m_str);if(m_bOper)m_b2=TRUE;void CCalculateDlg:OnBtn9() / TODO: Add your control notification handle
26、r code hereif(m_str="0")m_str.Empty();m_str+="9"SetDlgItemText(IDC_EDIT_DISPLAY,m_str);if(m_bOper)m_b2=TRUE;void CCalculateDlg:OnBtnDivide() / TODO: Add your control notification handler code hereif(m_bOper)if(m_b2)Calculate();elseGetDlgItemText(IDC_EDIT_DISPLAY,m_str);m_db1=atof
27、(m_str);m_str=""m_bOper=TRUE;m_chOperator='/'void CCalculateDlg:OnBtnMultiply() / TODO: Add your control notification handler code hereif(m_bOper)if(m_b2)Calculate();elseGetDlgItemText(IDC_EDIT_DISPLAY,m_str);m_db1=atof(m_str);m_str=""m_bOper=TRUE;m_chOperator='*'
28、void CCalculateDlg:OnBtnMinus() / TODO: Add your control notification handler code hereif(m_bOper)if(m_b2)Calculate();elseGetDlgItemText(IDC_EDIT_DISPLAY,m_str);m_db1=atof(m_str);m_str=""m_bOper=TRUE;m_chOperator='-'void CCalculateDlg:OnBtnAdd() / TODO: Add your control notificatio
29、n handler code hereif(m_bOper)if(m_b2)Calculate();elseGetDlgItemText(IDC_EDIT_DISPLAY,m_str);m_db1=atof(m_str);m_str=""m_bOper=TRUE;m_chOperator='+'void CCalculateDlg:OnBtnEqual() / TODO: Add your control notification handler code hereif(m_bOper)Calculate();m_bOper=FALSE;void CCalc
30、ulateDlg:Calculate()GetDlgItemText(IDC_EDIT_DISPLAY,m_str);m_db2=atof(m_str);switch(m_chOperator)case '/':if(m_db2=0)SetDlgItemText(IDC_EDIT_DISPLAY,"零不能做除數(shù)");return;m_db1=m_db1 / m_db2;break;case '*':m_db1=m_db1 * m_db2;break;case '-':m_db1=m_db1 - m_db2;break;case
31、 '+':m_db1=m_db1 + m_db2;break;default:break;m_str.Format("%.10f",m_db1);m_str=round(m_str);SetDlgItemText(IDC_EDIT_DISPLAY,m_str);m_str.Empty();m_b2=FALSE;void CCalculateDlg:OnBtnDot() / TODO: Add your control notification handler code hereif(m_str.Find('.')!=-1)return;m_s
32、tr+="."SetDlgItemText(IDC_EDIT_DISPLAY,m_str);void CCalculateDlg:OnBtnSqrt() / TODO: Add your control notification handler code heredouble dbTemp;GetDlgItemText(IDC_EDIT_DISPLAY,m_str);dbTemp=atof(m_str);dbTemp=sqrt(dbTemp);m_str.Format("%.10f",dbTemp);m_str=round(m_str);SetDlgIt
33、emText(IDC_EDIT_DISPLAY,m_str);m_str.Empty();void CCalculateDlg:OnBtnRec() / TODO: Add your control notification handler code heredouble dbTemp;GetDlgItemText(IDC_EDIT_DISPLAY,m_str);dbTemp=atof(m_str);dbTemp=1/dbTemp;m_str.Format("%.10f",dbTemp);m_str=round(m_str);SetDlgItemText(IDC_EDIT_
34、DISPLAY,m_str);m_str.Empty();void CCalculateDlg:OnBtnNegative() / TODO: Add your control notification handler code heredouble dbTemp;GetDlgItemText(IDC_EDIT_DISPLAY,m_str);dbTemp=atof(m_str);dbTemp=-dbTemp;m_str.Format("%.10f",dbTemp);m_str=round(m_str);SetDlgItemText(IDC_EDIT_DISPLAY,m_st
35、r);void CCalculateDlg:OnBtnMc() / TODO: Add your control notification handler code herem_store=0;SetDlgItemText(IDC_EDIT_M,"");void CCalculateDlg:OnBtnMplus() / TODO: Add your control notification handler code heredouble dbTemp;GetDlgItemText(IDC_EDIT_DISPLAY,m_str);dbTemp=atof(m_str);m_st
36、ore+=dbTemp;m_str.Empty();SetDlgItemText(IDC_EDIT_M,"M");void CCalculateDlg:OnBtnMr() / TODO: Add your control notification handler code herem_str.Format("%.10f",m_store);m_str=round(m_str);SetDlgItemText(IDC_EDIT_DISPLAY,m_str);m_str.Empty();void CCalculateDlg:OnBtnMs() / TODO:
37、Add your control notification handler code heredouble dbTemp;GetDlgItemText(IDC_EDIT_DISPLAY,m_str);dbTemp=atof(m_str);m_store=dbTemp;m_str.Empty();SetDlgItemText(IDC_EDIT_M,"M");void CCalculateDlg:OnBtnBackspace() / TODO: Add your control notification handler code hereGetDlgItemText(IDC_E
38、DIT_DISPLAY,m_str);int len=m_str.GetLength();if(len=1)m_str="0"elsem_str=m_str.Left(len-1);SetDlgItemText(IDC_EDIT_DISPLAY,m_str);void CCalculateDlg:OnBtnCe() / TODO: Add your control notification handler code herem_str="0"SetDlgItemText(IDC_EDIT_DISPLAY,m_str);void CCalculateDlg
39、:OnBtnC() / TODO: Add your control notification handler code herem_db1=0;m_db2=0;m_bOper=FALSE;m_str="0"SetDlgItemText(IDC_EDIT_DISPLAY,m_str);CString CCalculateDlg:round(CString str)int index=str.Find('.');if(index=-1)return str;int len=str.GetLength();int i;for(i=len-1; i>=ind
40、ex; i-)if(str.GetAt(i)!='0')break;if(i=index)str=str.Left(i);elsestr=str.Left(i+1);return str;四、 運(yùn)行測(cè)試結(jié)果與分析計(jì)算器設(shè)計(jì)成寬型的,更符合人們手移動(dòng)鼠標(biāo)的習(xí)慣,因?yàn)闄M向移動(dòng)比縱向簡(jiǎn)單.把數(shù)字錄入部分放在中間,右邊放上常用的運(yùn)算符,左邊放上不常用的函數(shù),可以減少移動(dòng)鼠標(biāo)的總距離.CE C Backspace放在上面,分成明顯的4大塊布局,使用戶更快適應(yīng)新計(jì)算器的各鍵位置.五、 設(shè)計(jì)心得這次程序設(shè)計(jì),讓我對(duì)windows編程有了新的體會(huì).一個(gè)程序的嚴(yán)密性是最重要的.而簡(jiǎn)單的實(shí)現(xiàn)加減乘
41、除等運(yùn)算和backspace的功能并不難,難得是設(shè)計(jì)的合理.所謂合理就是在各種情況下用戶的輸入都是預(yù)期的結(jié)果.而不是受到前次輸入數(shù)據(jù)的干擾.如實(shí)現(xiàn)不按等號(hào)的連續(xù)運(yùn)算(e.g. 1+1+1可以直接通過(guò)按這5個(gè)鍵實(shí)現(xiàn).不用按1 + 1 = + 1 =,即避免了中間按等號(hào)的麻煩).按了等號(hào)后,顯示出計(jì)算結(jié)果后直接輸入數(shù)據(jù)不會(huì)和上次顯示的結(jié)果混為一個(gè)數(shù)(e.g. 如按了=顯示上次運(yùn)算的結(jié)果為1,這時(shí)再按1,應(yīng)該顯示的是新的運(yùn)算的開始,即顯示1,而不嚴(yán)密的計(jì)算器會(huì)把上次顯示的1和這次輸入的1合成一個(gè)數(shù),即顯示11.這不是用戶預(yù)期的效果.)如按下backspace后應(yīng)該可以直接修改數(shù)據(jù).但不嚴(yán)密的計(jì)算器會(huì)
42、存在這樣一個(gè)bug,即如果是多位小數(shù),如12.34時(shí)候,這時(shí)按下兩次backspace時(shí)候,顯示的是1但要在接著輸入數(shù)據(jù)時(shí)候,比如按下2,預(yù)期的顯示應(yīng)該是12.而部分計(jì)算器會(huì)顯示1.002,因?yàn)樗鼪]有同步改變小數(shù)點(diǎn)的判斷,致使輸入數(shù)據(jù)時(shí)候不是預(yù)期結(jié)果.再如代碼里解釋的正負(fù)數(shù)的輸入地方,用戶按下2 +/- 2時(shí)候,顯示的依次應(yīng)該是2,-2,-22,但部分計(jì)算器會(huì)出現(xiàn)顯示的數(shù)據(jù)為2,-2,-18.這是由于正負(fù)數(shù)沒有分開討論的結(jié)果系統(tǒng)在處理時(shí)候第3個(gè)按鍵會(huì)處理成-2*10+2,即顯示的-18.本計(jì)算器很好的處理了這一bug.類似的bug處理細(xì)節(jié)還有很多,就不一一列舉了.下面指出本計(jì)算器的缺陷.backspace鍵的實(shí)現(xiàn),調(diào)用了類型轉(zhuǎn)換long int(double),這樣就局限了退格的范圍為10e10的范圍.在輸入0 . 0 3時(shí)候,計(jì)算器默認(rèn)應(yīng)該顯示的依次是0,0.,0.0,0.03,但由于數(shù)據(jù)會(huì)自動(dòng)去掉最后的0,所以中間會(huì)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 機(jī)織物的性能與運(yùn)動(dòng)服要求考核試卷
- 體育會(huì)展物流與供應(yīng)鏈管理優(yōu)化考核試卷
- 國(guó)際物流與跨境交通運(yùn)輸考核試卷
- 礦業(yè)信息安全培訓(xùn)課件
- 服務(wù)可持續(xù)性考核試卷
- 信托項(xiàng)目的合同管理與履行考核試卷
- 電子垃圾回收利用項(xiàng)目投資合同
- 工程項(xiàng)目擔(dān)保合同
- 國(guó)際融資租賃合同
- 中學(xué)生閱讀后的思考征文
- 2023年第27屆希望杯〞八年級(jí)全國(guó)數(shù)學(xué)邀請(qǐng)賽試卷與參考答
- 世界著名童話故事英文繪本故事丑小鴨
- 四年級(jí)科學(xué)下冊(cè)課件 第四課 河流和湖泊 冀人版 25張
- 綠色簡(jiǎn)約墻體商務(wù)風(fēng)PPT模板
- GB/T 462-2003紙和紙板水分的測(cè)定
- QC演示:提高檢查井周邊密實(shí)度
- 年度應(yīng)急演練計(jì)劃表
- 英語(yǔ)板書設(shè)計(jì)(課件)
- 智能中臺(tái)數(shù)據(jù)底座解決方案
- 《財(cái)政與金融》課程教學(xué)大綱
- 《國(guó)際稅收》教案
評(píng)論
0/150
提交評(píng)論