




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上 計算器設計實驗報告1、 實驗設計主要分工 文斌:算法設計,LCD顯示。04* 張希:界面(按鈕控件)設計,文件內(nèi)容讀取。共同調(diào)試、完善設計。2、 程序設計實現(xiàn)功能效果(1)支持整數(shù)、小數(shù)基本加減乘除運算;(2)有優(yōu)先級的判別計算。優(yōu)先級由高到低一次為括號運算、乘除運算、加減運算。(3)支持鍵盤輸入和觸摸屏輸入;(4)能讀取指定目錄下文本內(nèi)容(內(nèi)容為計算表達式)并計算得出結(jié)果,將內(nèi)容和結(jié)果顯示在LCD上。程序任務開始后,等待鍵盤或觸摸屏的輸入。輸入鍵有09數(shù)字鍵、+-*/()運算符、del退格鍵、clear清屏鍵、read讀指定目錄文本內(nèi)容并計算鍵、enter'
2、;='鍵、.小數(shù)點鍵。每當有字符輸入時,觸摸屏相應鍵顯示“AAA”,100ms后恢復原相應按鍵符號,同時LCD屏幕上顯示相應字符。當輸入'del'鍵時,屏幕顯示去掉最后一位字符。當輸入'='號后,得出計算結(jié)果,結(jié)果顯示于表達式的下一行。若是除零錯誤,則結(jié)果顯示為“/0ERROR!”。若有非法字符(觸摸點不能識別為設計按鍵符則視為非法字符),則結(jié)果輸出為“Syntax Error!”。若表達式有運算符連續(xù)輸入,則忽略前面的運算符,只取最后一位運算符計算,正常顯示數(shù)字結(jié)果。當輸入'clear'鍵時,情況顯示區(qū)域。當輸入'read
3、9;鍵時,從指定目錄文本文件中讀取表達式并計算。將表達式內(nèi)容和計算結(jié)果顯示在LCD上。LCD顯示界面如下:輸入顯示:結(jié)果輸出:del123+clear456-read789*enter(0)/3、 程序算法實現(xiàn) 1、計算算法 首先將輸入的09數(shù)字、+-*/()運算符的內(nèi)容存儲于一個全局變量calnumber中,表達為中綴表達式。用void str2repol()函數(shù),將輸入字符串calnumber轉(zhuǎn)換成逆波蘭表達式并存于全局數(shù)組char repolmaxs中。str2repol()函數(shù)中綴表達式轉(zhuǎn)成逆波蘭后綴表達式算法如下:(1)首先構(gòu)造一個運算符棧stackmaxs,此運算符在棧內(nèi)遵循越往棧
4、頂優(yōu)先級越高的原則。(2)讀入一個中綴表示算術(shù)表達式strmaxs(注:stri=cali)。(3)從左至右掃描該算術(shù)表達式,從第一個字符開始判斷,如果該字符是數(shù)字,則分析到該數(shù)字串的結(jié)束并將該數(shù)字串直接輸出到repolmaxs中。(4)如果不是數(shù)字,該字符則是運算符,此時需比較優(yōu)先關系。步驟如下:若為左括號(則壓入運算符棧頂;若為其他運算符,則將該字符與運算符棧頂?shù)倪\算符的優(yōu)先關系相比較。若該字符優(yōu)先關系高于此時運算符棧頂?shù)倪\算符,則將該運算符入棧。若該字符優(yōu)先關系不高于此時運算符棧頂?shù)倪\算符,則將棧頂?shù)倪\算符從棧中彈出到repolmaxs,直到棧頂運算符的優(yōu)先級低于當前運算符,將該字符入棧
5、。若為有括號(,則彈出運算符棧頂?shù)倪\算符至到repolmaxs,直到遇到左括號(。彈出并作廢此開括號。(5) 重復上述操作。中綴表達式轉(zhuǎn)成逆波蘭后綴表達式后,calculate()函數(shù)計算后綴表達式的值算法如下: 用局部數(shù)組stacktop存放運算結(jié)果,top初值為0.(1) 依次讀入后綴表達式repolmaxs的字符ch,循環(huán)判斷ch。(2) 若ch為運算符,則stacktop-1與stacktop做相應運算。若運算只需單操 作數(shù)則stacktop做相應運算。運算結(jié)果存于stacktop-1。然后top- -。 否則ch為數(shù)字或小數(shù)點.',為數(shù)字則 d=10.0*d+ch-'
6、0' (d初始值為0,用 于存放連續(xù)數(shù)字字符的數(shù)學值)。遇小數(shù)點,d保持原值。小數(shù)點后的數(shù)字符與 小數(shù)點前的數(shù)字符一樣處理,i記錄小數(shù)點后的數(shù)字符個數(shù)。最后d=d/(10i), top+;stacktop=d。注:若str2repol()函數(shù)遇非法字符時,LCD輸出相應提示,不調(diào)用calculate()。若calculate()函數(shù)遇除零,則不做運算,LCD輸出“/0ERROR!”。2、 按鍵控件3、 LCD輸出顯示將字符串轉(zhuǎn)為Unicode編碼,在指定坐標處用文本模式顯示字符串。實現(xiàn)函數(shù)如下: void lcddisplay(char *str,int xx,int yy) PDC
7、pdc;/創(chuàng)建繪圖設備上下文結(jié)構(gòu) U16 chx100; pdc=CreateDC();/創(chuàng)建繪圖設備上下文 strChar2Unicode(chx, str); TextOut(pdc, xx, yy, chx, TRUE, FONTSIZE_MIDDLE);/文本模式下顯示文字 DestoryDC(pdc);/刪除繪圖設備上下文 注:由于計算器計算結(jié)果為double型數(shù)據(jù),需將double型數(shù)據(jù)轉(zhuǎn)為字符串。 實現(xiàn)函數(shù)如下: char *doub2str(double d, char *str) char str240; /double型數(shù)據(jù)d轉(zhuǎn)為字符串存于str double f=-1.0
8、;int j=0,k,i,st,t; if(d=0.0)str0='0'str1='0'/判斷d為0 else if(d<0.0)d=-d;st=1;str0='-'/判斷為負數(shù) else st=0; i=(int)d; /正浮點數(shù)的整數(shù)部分 while(i!=0) str2j+=i%10+'0'i /= 10; for(k=0;k<j;k+) strk+st = str2j-1-k; if(st=1)j=j+st;st=0; strj+='.' d -= (int)d; /正浮點數(shù)的小數(shù)部分 for(
9、i=0;i<10;i+) d *= 10;strj+ = (int)d+'0'd -= (int)d; while(str-j='0');/去掉末尾的0 str+j = '0' return str; 4、文本讀取 四、程序設計流程圖五、程序?qū)崿F(xiàn)主要函數(shù)功能說明(1) void Main_Task(void *Id):主任務函數(shù);功能:創(chuàng)建消息結(jié)構(gòu); 清除屏幕; 調(diào)用創(chuàng)建按鈕控件函數(shù); 等待消息; 判斷消息; 調(diào)用消息處理函數(shù);(2) void myButtonall():創(chuàng)建按鈕控件函數(shù) 功能:調(diào)用相關函數(shù); SetRect(); Cre
10、ateButton(); DrawButton(b19); 創(chuàng)建按鈕;(3)void onKey(unsigned int nkey, int fnkey):鍵盤消息響應函數(shù)功能:判斷按鍵; 調(diào)用相關按鍵響應函數(shù);(4)void myontouch(int xxx,int yyy):觸摸屏消息響應函數(shù)功能:識別觸摸區(qū)域; 調(diào)用響應觸摸鍵響應函數(shù);(5)void str2repol():字符表達式轉(zhuǎn)逆波蘭表達式函數(shù)功能:判別首位字符是否為'-'號,是則將字符串后移一位,首位置0; 判別有無非法字符.有則標志位err=1; 將輸入字符串轉(zhuǎn)成逆波蘭表達式;(6)void calcul
11、ate():計算函數(shù)功能:判別標志位err。為1則輸出“Syntax Error!”并退出,否則繼續(xù)-> 判別逆波蘭表達式內(nèi)容; 判別小數(shù)點->對數(shù)字做相應加權(quán) 判別運算符->做相應運算 調(diào)用double型轉(zhuǎn)字符串函數(shù); 調(diào)用字符串結(jié)果顯示函數(shù)。(7)char *doub2str(double d, char *str):double型轉(zhuǎn)字符串函數(shù)功能:判別d是否為負數(shù)。是則字符串首位置'-';d取反,繼續(xù)-> 判別d小數(shù)部分是否為零。是則整數(shù)轉(zhuǎn)字符串,否則再繼續(xù)>小數(shù)轉(zhuǎn)字符串 將double型數(shù)字轉(zhuǎn)換成字符串類型; 存儲字符串并返回。(8)voi
12、d lcddisplay(char *str,int xx,int yy):字符串顯示函數(shù)功能:將字符串str顯示在LCD的指定坐標(xx,yy)。(9) void redraw(char key):重畫按鈕函數(shù)功能:響應相應函數(shù); 重畫相應按鈕; 延時100ms后恢復原按鈕。(10) char zb2key(int x,int y):坐標轉(zhuǎn)按鍵函數(shù)功能:將觸摸點坐標(x,y)轉(zhuǎn)換成相應按鍵字符。(11) void dcr(char key):退格、清屏、讀文件函數(shù)功能:響應退格鍵,屏幕顯示去除最后一位字符,當前輸入后前一次輸入置'0'; 響應清屏鍵,清楚顯示區(qū)域內(nèi)容; 響應讀
13、文件,調(diào)用讀文件函數(shù)。(12) void readfile():讀文件函數(shù)功能:讀取指定目錄文本文件; 顯示文本內(nèi)容; 計算內(nèi)容(表達式)并顯示。(13) void clc():清屏函數(shù)功能:清除顯示區(qū)域內(nèi)容。 六、完整【main.c】程序#include "./ucos-ii/includes.h" /* uC/OS interface */#include "./ucos-ii/add/osaddition.h"#include "./ucos-ii/add/ustring.h"#include "./inc/drive
14、rs.h"#include<math.h>#include "./inc/sys/lib.h"#include "./src/gui/gui.h"#include <string.h>#include <stdio.h>char TextFilename="/sys/ucos/fj/2.txt" /自定義聲明/文件test: 1+2+3+4+5+6+7+8+9=/文件1: 1+2+3+4+5+6+7+8+9=/文件2: 0.7+5*(1+2)/(2+4)=/文件3: FILE* pfile
15、;#define maxs 200#define react 100#define xz 130#define yz 100char calmaxs;char readmaxs;int number=1,clear=1;double result;U16 str120;char repolmaxs; /*存儲后綴表達式*/void Main_Task(void *Id); /Main_Test_Taskvoid calculate();void str2repol();void readfile();void clc();void send();void lcddisplay(char *st
16、r,int xx,int yy);void rezdisplay(double res);void onKey(unsigned int nkey, int fnkey);void myontouch(int xxx,int yyy);void myButtonall();void redraw(char key);void send(PButtonCtrl b);char zb2key(int x,int y);void dcr(char key);char *doub2str(double d, char *str);/*任務定義*/OS_STK Main_StackSTACKSIZE=0
17、, ; /Main_Test_Task堆棧#define Main_Task_Prio 12void ontouch(unsigned int x, int y);OS_STK test_StackSTACKSIZE=0, ; /test_Test_Task堆棧void test_Task(void *Id); /test_Test_Task#define test_Task_Prio 15PButtonCtrl b0;PButtonCtrl b1;PButtonCtrl b2;PButtonCtrl b3;PButtonCtrl b4;PButtonCtrl b5;PButtonCtrl b
18、6;PButtonCtrl b7;PButtonCtrl b8;PButtonCtrl b9;PButtonCtrl b10;PButtonCtrl b11;PButtonCtrl b12;PButtonCtrl b13;PButtonCtrl b14;PButtonCtrl b15;PButtonCtrl b16;PButtonCtrl b17;PButtonCtrl b18;PButtonCtrl b19;/PTextCtrl b20;U32 CtrlID0=200;U32 CtrlID1=201;U32 CtrlID2=202;U32 CtrlID3=303;U32 CtrlID4=20
19、4;U32 CtrlID5=205;U32 CtrlID6=306;U32 CtrlID7=207;U32 CtrlID8=208;U32 CtrlID9=209;U32 CtrlID10=210;U32 CtrlID11=211;U32 CtrlID12=212;U32 CtrlID13=213;U32 CtrlID14=214;U32 CtrlID15=215;U32 CtrlID16=216;U32 CtrlID17=217;U32 CtrlID18=218;U32 CtrlID19=219;U32 CtrlID20=220; structRECT rect0;/定義矩形框結(jié)構(gòu)struc
20、tRECT rect1;structRECT rect2;structRECT rect3;structRECT rect4;structRECT rect5;structRECT rect6;structRECT rect7;structRECT rect8;structRECT rect9;structRECT rect10;structRECT rect11;structRECT rect12;structRECT rect13;structRECT rect14;structRECT rect15;structRECT rect16;structRECT rect17;structRE
21、CT rect18;structRECT rect19;structRECT rect20; U16 Caption016; /定義按鍵功能 U16 Caption116;U16 Caption216;U16 Caption316;U16 Caption416;U16 Caption516;U16 Caption616;U16 Caption716;U16 Caption816;U16 Caption916;U16 Caption1016;U16 Caption1116;U16 Caption1216;U16 Caption1316;U16 Caption1416;U16 Caption151
22、6;U16 Caption1616;U16 Caption1716;U16 Caption1816;U16 Caption1916; U16 Caption_Actived16; U32 ButtonStyle=5;U32 ButtonStyle_Actived=3;U32 ButtonFontSize= 2;U32 TextStyle=4;U32 TextFontSize= 2;/*主函數(shù)*/int main(void)ARMTargetInit(); OSInit(); OSInitUart();initOSFile();#if USE_MINIGUI=0initOSMessage();i
23、nitOSList();initOSDC();initOSCtrl();LoadFont();#endifloadsystemParam();LCD_printf("Create task on uCOS-II.n");OSTaskCreate(Main_Task, (void *)0, (OS_STK *)&Main_StackSTACKSIZE-1, Main_Task_Prio);OSAddTask_Init(1); LCD_printf("Starting uCOS-II.n");LCD_printf("Entering gra
24、ph mode.n");LCD_ChangeMode(DspGraMode);OSStart(); return 0;/主任務/void Main_Task(void *Id) PButtonCtrl b;POSMSG pMsg=0;/創(chuàng)建消息結(jié)構(gòu) U32 tou; int x=0; int y=0; ClearScreen(); myButtonall(); for(;) pMsg=WaitMessage(0); /等待消息switch(pMsg->Message)case OSM_KEY:/鍵盤消息 onKey(pMsg->WParam,pMsg->LParam
25、); break; case OSM_TOUCH_SCREEN: x=pMsg->WParam&0xffff; y=pMsg->WParam>>16; myontouch(x,y); break; DeleteMessage(pMsg);/刪除消息,釋放資源 void onKey(unsigned int nkey, int fnkey) int ret; char *str, skey16;cal0='0' if(clear=1)clear=0;clc();/清屏 lcddisplay(cal+1,xz,yz); if(nkey&KEY
26、_DOWN)=0)return; switch(nkey&0xff)case 'N':str="NumLock" clc(); readfile(); break;case 'r':str="Enter" calnumber='=' redraw(calnumber); printf("表達式:%sn",cal+1); lcddisplay(cal+1,xz,yz); str1number=calnumber; str2repol();calculate(); for(ret=1
27、;ret<=number;ret+) calret='0' if(ret=number)number=1;ret=2; clear=2;break;default:skey0=nkey;skey1=0;str=skey; calnumber=nkey; redraw(calnumber); lcddisplay(cal+1,xz,yz); str1number=calnumber; number+=1; if(clear=2) clear=1; printf("%sr",cal+1); void myontouch(int xxx,int yyy) i
28、nt ret; if(clear=1)clear=0;clc();/清屏 calnumber=zb2key(xxx,yyy); redraw(calnumber); switch(calnumber) case 'd': printf("ndelren"); dcr(calnumber);break; case 'c': dcr(calnumber);break; case 'r': dcr(calnumber);break; case '=': printf("表達式:%sn",cal+1
29、); lcddisplay(cal+1,xz,yz); str1number=calnumber; str2repol(); calculate(); clear=2; for(ret=1;ret<=number;ret+) calret='0' if(ret=number)number=1;ret=2; break; default: if(clear=2) clear=1; str1number=calnumber; lcddisplay(cal+1,xz,yz); number+; break; printf("%sr",cal+1); void
30、 str2repol() /*將算術(shù)表達式轉(zhuǎn)化為后綴表達式*/char strmaxs,strtemmaxs; /*存儲原算術(shù)表達式*/char stackmaxs; /*作為棧使用*/char ch,*er;int i,t,top=0,j,sum,st;i=0; /*獲取用戶輸入的表達式*/do i+; stri=cali; while(cali!='=' && i!=maxs); sum=i; /sum中記錄了str表達式中的字符的個數(shù)t=1;i=1; if(str1='-') for(st=1;st<sum;st+) strtemst
31、=strst+1; str1='0' str2='-' for(st=3;st<=sum+1;st+) strst=strtemst-2; sum+;ch=stri;i+;/ch為表達式中第一個字符while(ch!='=')switch(ch)case '(': /*判定為左括號*/top+;stacktop=ch; break; case ')': /*判定為右括號*/while(stacktop!='(') repolt=stacktop;top-;t+;top-;break; case
32、 '+': /*判定為加減號*/case '-': while(top!=0&&stacktop!='(')repolt=stacktop;top-;t+;top+;stacktop=ch;break;case '*': /*判定為乘除號*/ case '/':while(stacktop='*'|stacktop='/')repolt=stacktop;top-;t+;top+;stacktop=ch;break;case ' ':break;def
33、ault:while(ch>='0'&&ch<='9'|ch='.') /*判定為數(shù)字*/repolt=ch;t+;ch=stri;i+;i-;repolt='=' t+; /*if(ch<'0'&&ch>'9'&&ch!='.') er="error!" lcddisplay(er,xz,yz+20); ch='=' */ch=stri;i+;while(top!=0)rep
34、olt=stacktop;t+;top-;repolt='='void calculate() /*計算后綴表達式的值*/double stackmaxs,d0,d1,dd; /*作為棧使用*/ unsigned int re;char ch,*restr,*rez;int t=1,top=0,counter,i; /*t為ex下標,top為stack下標*/static int zh=1; ch=repolt;t+; while(ch!='=')switch(ch) case '+': stacktop-1=stacktop-1+stackto
35、p; top-; break; case '-': stacktop-1=stacktop-1-stacktop; top-; break; case '*': stacktop-1=stacktop-1*stacktop; top-; break; case '/': if(stacktop!=0) stacktop-1=stacktop-1/stacktop; else printf("nt除零錯誤!n"); lcddisplay("ERROR!",xz,yz); / exit(0); /*異常退出*/
36、 top-; break; default: /*將數(shù)字字符轉(zhuǎn)化為對應的數(shù)值*/ d1=0; d0=0; counter=0; while(ch>='0'&&ch<='9'|ch='.') if(ch!='.'&&zh=1) d1=10.0*d1+ch-'0' if(ch='.')zh=0; if(ch!='.'&&zh=0) d0=10.0*d0+ch-'0' counter+; ch=repolt;t+;
37、 /計算 zh=1; for(i=0;i<counter;i+) d0=d0/10.0; dd=d1+d0; top+; stacktop=dd; ch=repolt;t+; /轉(zhuǎn)換運算 result=stacktop;printf("n計算結(jié)果:%fnn",stacktop); rez=doub2str(result,restr); lcddisplay(rez,xz,yz+20); void lcddisplay(char *str,int xx,int yy) PDC pdc;/創(chuàng)建繪圖設備上下文結(jié)構(gòu)U16 chx100;pdc=CreateDC();/創(chuàng)建繪圖
38、設備上下文f strChar2Unicode(chx, str); TextOut(pdc, xx, yy, chx, TRUE, FONTSIZE_MIDDLE);/文本模式下顯示文字DestoryDC(pdc);/刪除繪圖設備上下文void myButtonall() PDC pdc;/定義繪圖設備上下文結(jié)構(gòu) pdc=CreateDC();/創(chuàng)建繪圖設備上下文 /定義按鍵功能Int2Unicode(1,Caption0); Int2Unicode(2,Caption1); Int2Unicode(3,Caption2); strChar2Unicode(Caption3,"+&q
39、uot;); Int2Unicode(4,Caption4); Int2Unicode(5,Caption5); Int2Unicode(6,Caption6); strChar2Unicode(Caption7,"-"); Int2Unicode(7,Caption8); Int2Unicode(8,Caption9); Int2Unicode(9,Caption10); strChar2Unicode(Caption11,"*"); strChar2Unicode(Caption12,"("); Int2Unicode(0,Cap
40、tion13); strChar2Unicode(Caption14,")"); strChar2Unicode(Caption15,"/"); strChar2Unicode(Caption16,"del"); strChar2Unicode(Caption17,"read"); strChar2Unicode(Caption18,"clear"); strChar2Unicode(Caption19,"enter" ); strChar2Unicode(Caption_A
41、ctived,"AAA" ); SetRect(&rect0, 165,165,235,235);/第一行SetRect(&rect1, 245,165,315,235);SetRect(&rect2, 325,165,395,235);SetRect(&rect3, 405,165,475,235);SetRect(&rect4, 165,245,235,315);/第二行SetRect(&rect5, 245,245,315,315);SetRect(&rect6, 325,245,395,315);SetRect
42、(&rect7, 405,245,475,315);SetRect(&rect8, 165,325,235,395);/第三行SetRect(&rect9, 245,325,315,395);SetRect(&rect10, 325,325,395,395);SetRect(&rect11, 405,325,475,395);SetRect(&rect12, 165,405,235,475);/第四行SetRect(&rect13, 245,405,315,475);SetRect(&rect14, 325,405,395,475
43、);SetRect(&rect15, 405,405,475,475);SetRect(&rect16, 5,165,155,315);/左1SetRect(&rect17, 5,325,155,475);/左2SetRect(&rect18, 485,165,635,315);/右1SetRect(&rect19, 485,325,635,475);/右2SetRect(&rect20, 165,5,475,155);/頂欄 /設置間距10后坐標:b0=CreateButton(CtrlID0, &rect0, ButtonFontSi
44、ze, ButtonStyle,Caption0, NULL);b1=CreateButton(CtrlID1, &rect1, ButtonFontSize, ButtonStyle, Caption1, NULL);b2=CreateButton(CtrlID2, &rect2, ButtonFontSize, ButtonStyle_Actived, Caption2, NULL);b3=CreateButton(CtrlID3, &rect3, ButtonFontSize, ButtonStyle, Caption3, NULL);b4=CreateButto
45、n(CtrlID4, &rect4, ButtonFontSize, ButtonStyle, Caption4, NULL);b5=CreateButton(CtrlID5, &rect5, ButtonFontSize, ButtonStyle, Caption5, NULL);b6=CreateButton(CtrlID6, &rect6, ButtonFontSize, ButtonStyle, Caption6, NULL);b7=CreateButton(CtrlID7, &rect7, ButtonFontSize, ButtonStyle, Ca
46、ption7, NULL);b8=CreateButton(CtrlID8, &rect8, ButtonFontSize, ButtonStyle, Caption8, NULL);b9=CreateButton(CtrlID9, &rect9, ButtonFontSize, ButtonStyle, Caption9, NULL);b10=CreateButton(CtrlID10, &rect10, ButtonFontSize, ButtonStyle, Caption10, NULL);b11=CreateButton(CtrlID11, &rect11, ButtonFontSize, ButtonStyle, Caption11, NULL);b12=CreateButton(CtrlID12, &rect12, ButtonFontSize, ButtonStyle, Caption12, NULL);b13=CreateButton(CtrlID13, &rect13, ButtonFontSize, ButtonStyle, Caption13, NULL);b14=CreateButton(CtrlID14, &rect14
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣告項目造價管理辦法
- 邢臺高空揚塵管理辦法
- 接待外賓管理管理辦法
- 貨車司機進廠管理辦法
- 肩周炎中醫(yī)推拿課件
- 到夢空間培訓課件
- 肝臟穿刺護理課件
- 楓楊外國語初二數(shù)學試卷
- 工大附中高三數(shù)學試卷
- 福建南平七下數(shù)學試卷
- 山東醫(yī)藥技師學院招聘筆試真題2024
- 2025至2030中國柔性直流輸電行業(yè)運營規(guī)劃及發(fā)展前景深度分析報告
- 安全產(chǎn)風險管理制度
- 深化國有企業(yè)改革調(diào)研提綱
- 小學騎車安全課件
- 奶茶公司供應鏈管理制度
- 公司個人獨資章程范本
- 《中國酒類企業(yè)ESG披露指南》
- 物業(yè)消防培訓教學課件
- 2025年航空安全管理專業(yè)考試試卷及答案
- 2025至2030年中國玉米淀粉行業(yè)市場現(xiàn)狀分析及前景戰(zhàn)略研判報告
評論
0/150
提交評論