




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、江南大學(xué)實(shí)驗(yàn)報(bào)告課程名稱 操作系統(tǒng) 實(shí)驗(yàn)名稱 作業(yè)調(diào)度實(shí)驗(yàn) 實(shí)驗(yàn)日期 2014 12 11 班級(jí) 信計(jì)1202 姓名 任航 學(xué)號(hào) 1130112211 儀器編號(hào) 實(shí)驗(yàn)報(bào)告要求 1實(shí)驗(yàn)?zāi)康?2實(shí)驗(yàn)要求 3實(shí)驗(yàn)步驟 4程序清單 5運(yùn)行情況 5實(shí)驗(yàn)體會(huì) 一、 實(shí)驗(yàn)?zāi)康模河酶呒?jí)語(yǔ)言編寫(xiě)和調(diào)試一個(gè)進(jìn)程調(diào)度程序,以加深對(duì)進(jìn)程的概念及進(jìn)程調(diào)度算法的理解。二 . 實(shí)驗(yàn)要求:(1)編寫(xiě)并調(diào)試一個(gè)單道處理系統(tǒng)的作業(yè)調(diào)度模擬程序。作業(yè)等待算法:分別采用先來(lái)先服務(wù)(FCFS),最短作業(yè)優(yōu)先(SJF)、響應(yīng)比高者優(yōu)先(HRN)的調(diào)度算法。對(duì)每種調(diào)度算法都要求打印每個(gè)作業(yè)開(kāi)始運(yùn)行時(shí)刻、完成時(shí)刻、周轉(zhuǎn)時(shí)間、帶權(quán)
2、周轉(zhuǎn)時(shí)間,以及這組作業(yè)的平均周轉(zhuǎn)時(shí)間及帶權(quán)平均周轉(zhuǎn)時(shí)間,以比較各種算法的優(yōu)缺點(diǎn)。(2) 編寫(xiě)并調(diào)度一個(gè)多道程序系統(tǒng)的作業(yè)調(diào)度模擬程序。作業(yè)調(diào)度算法:采用基于先來(lái)先服務(wù)的調(diào)度算法。可以參考課本中的方法進(jìn)行設(shè)計(jì)。對(duì)于多道程序系統(tǒng),要假定系統(tǒng)中具有的各種資源及數(shù)量、調(diào)度作業(yè)時(shí)必須考慮到每個(gè)作業(yè)的資源要求。3. 實(shí)驗(yàn)步驟.4. 程序清單:?jiǎn)蔚琅幚硐葋?lái)先服務(wù)算法:#include <stdio.h>#include <stdlib.h>#include <conio.h>int n;/全局變量nfloat T1=0,T2=0;/分別用來(lái)表示周轉(zhuǎn)時(shí)間和帶權(quán)周轉(zhuǎn)時(shí)間之和
3、int times=0;struct jcb /作業(yè)控制塊 char name10; /作業(yè)名 int reachtime; /作業(yè)到達(dá)時(shí)間 int starttime; /作業(yè)開(kāi)始時(shí)間 int needtime; /作業(yè)需要運(yùn)行的時(shí)間 int finishtime; /作業(yè)完成時(shí)間 float cycletime; /作業(yè)周轉(zhuǎn)時(shí)間 float cltime; /作業(yè)帶權(quán)周轉(zhuǎn)時(shí)間 char state; /作業(yè)狀態(tài) struct jcb *next; /結(jié)構(gòu)體指針*ready=NULL,*p,*q;typedef struct jcb JCB;void inital()/建立作業(yè)控制塊隊(duì)列,先
4、將其排成先來(lái)先服務(wù)的模式隊(duì)列 int i; printf("ntt輸入作業(yè)數(shù):"); scanf("%d",&n); for(i=0; i<n; i+) p=(JCB*)malloc(sizeof(JCB);/聲明結(jié)點(diǎn) printf("tt輸入第%d個(gè)作業(yè)名:",i+1); scanf("%s",p->name); p->reachtime=i;/第一個(gè)0秒到,第二個(gè)1秒到 printf("tt第%d個(gè)作業(yè)到達(dá)時(shí)間默認(rèn)為:%d",i+1,i); printf("
5、;ntt輸入作業(yè)要運(yùn)行的時(shí)間:"); scanf("%d",&p->needtime); p->state='W'/狀態(tài)初始化為等待 p->next=NULL; if(ready=NULL)/如果是第一個(gè)結(jié)點(diǎn)的話執(zhí)行 ready=q=p; else/不是第一個(gè)結(jié)點(diǎn) q->next=p;/鏈接起來(lái) q=p;/q向后移動(dòng)一個(gè)結(jié)點(diǎn),ready始終指向第一個(gè) void disp(JCB* q)/顯示作業(yè)運(yùn)行后的周轉(zhuǎn)時(shí)間及帶權(quán)周轉(zhuǎn)時(shí)間等 printf("n作業(yè)%s正在運(yùn)行,其運(yùn)行情況如下:n",q->
6、name); printf("開(kāi)始運(yùn)行時(shí)刻:%dn",q->starttime); printf("完成時(shí)刻:%dn",q->finishtime); printf("周轉(zhuǎn)時(shí)間:%fn",q->cycletime); printf("帶權(quán)周轉(zhuǎn)時(shí)間:%fn",q->cltime); getch();void running(JCB *p) /運(yùn)行作業(yè) if(p=ready)/先將要運(yùn)行的作業(yè)從隊(duì)列中分離出來(lái) ready=p->next; p->next=NULL; else q=r
7、eady; while(q->next!=p) q=q->next; q->next=p->next; p->starttime=times;/計(jì)算作業(yè)運(yùn)行后的完成時(shí)間,周轉(zhuǎn)時(shí)間等等 p->state='R' p->finishtime=p->starttime+p->needtime; p->cycletime=(float)(p->finishtime-p->reachtime); p->cltime=(float)(p->cycletime/p->needtime); T1+=p-&
8、gt;cycletime;/周轉(zhuǎn)時(shí)間之和 T2+=p->cltime;/帶全周轉(zhuǎn)時(shí)間之和 disp(p);/調(diào)用disp()函數(shù),顯示作業(yè)運(yùn)行情況 times+=p->needtime;/累加時(shí)間量 p->state='F'/完成狀態(tài) printf("n%s has been finished!npress any key to continue.n",p->name); free(p); /釋放 getch();void final() /最后打印作業(yè)的平均周轉(zhuǎn)時(shí)間,平均帶權(quán)周轉(zhuǎn)時(shí)間 float s,t; t=T1/n; s=T2/
9、n; getch(); printf("nn作業(yè)已經(jīng)全部完成!"); printf("n%d個(gè)作業(yè)的平均周轉(zhuǎn)時(shí)間是:%f",n,t); printf("n%d個(gè)作業(yè)的平均帶權(quán)周轉(zhuǎn)時(shí)間是%f:nnn",n,s);void fcfs() /先來(lái)先服務(wù)算法 int i,iden; system("cls"); inital(); for(i=0; i<n; i+)/n是作業(yè)的個(gè)數(shù) p=ready;/p指向第一個(gè) iden=1; do if(p->state='W'&&p->
10、;reachtime<=times) iden=0; if(iden)p=p->next; while(p!=NULL&&iden) ; if(iden) i-; printf("n沒(méi)有滿足要求的進(jìn)程,需等待"); times+; if(times>100) printf("n時(shí)間過(guò)長(zhǎng)"); getch(); else running(p); /調(diào)用running()函數(shù) final(); /調(diào)用running()函數(shù)int main() /主函數(shù) printf("ntt先來(lái)先服務(wù)算法,按任意鍵繼續(xù)."
11、;); getch(); fcfs();單道批處理最短作業(yè)優(yōu)先算法:#include <stdio.h>#include <stdlib.h>#include <conio.h>int n;/全局變量nfloat t1=0,t2=0;/分別用來(lái)表示周轉(zhuǎn)時(shí)間和帶權(quán)周轉(zhuǎn)時(shí)間之和int times=0;struct jcb /作業(yè)控制塊 char name10; /作業(yè)名 int reachtime; /作業(yè)到達(dá)時(shí)間 int starttime; /作業(yè)開(kāi)始時(shí)間 int needtime; /作業(yè)需要運(yùn)行的時(shí)間 float super; /作業(yè)的響應(yīng)比 int f
12、inishtime; /作業(yè)完成時(shí)間 float cycletime; /作業(yè)周轉(zhuǎn)時(shí)間 float cptime; /作業(yè)帶權(quán)周轉(zhuǎn)時(shí)間 char state; /作業(yè)狀態(tài) struct jcb *next; /結(jié)構(gòu)體指針*head=NULL,*p,*q;typedef struct jcb JCB;void inital()/建立作業(yè)控制塊隊(duì)列,先將其排成先來(lái)先服務(wù)的模式隊(duì)列 int i; printf("ntt輸入作業(yè)數(shù):"); scanf("%d",&n); for(i=0; i<n; i+) p=(JCB*)malloc(sizeof
13、(JCB);/聲明結(jié)點(diǎn) printf("tt輸入第%d個(gè)作業(yè)名:",i+1); scanf("%s",p->name); p->reachtime=i;/默認(rèn)第一個(gè)0秒到,第二個(gè)1秒到。 printf("tt第%d個(gè)作業(yè)到達(dá)時(shí)間默認(rèn)為:%d",i+1,i); printf("ntt輸入作業(yè)要運(yùn)行的時(shí)間:"); scanf("%d",&p->needtime); p->state='W'/狀態(tài)初始化為等待 p->next=NULL; if(he
14、ad=NULL)/如果是第一個(gè)結(jié)點(diǎn)的話執(zhí)行 head=q=p; else/不是第一個(gè)結(jié)點(diǎn) q->next=p;/鏈接起來(lái) q=p;/q向后移動(dòng)一個(gè)結(jié)點(diǎn),ready始終指向第一個(gè) void display(JCB* q)/顯示作業(yè)運(yùn)行后的周轉(zhuǎn)時(shí)間及帶權(quán)周轉(zhuǎn)時(shí)間等 printf("n作業(yè)%s正在運(yùn)行,其運(yùn)行情況如下:n",q->name); printf("開(kāi)始運(yùn)行時(shí)刻:%dn",q->starttime); printf("完成時(shí)刻:%dn",q->finishtime); printf("周轉(zhuǎn)時(shí)間:%
15、fn",q->cycletime); printf("帶權(quán)周轉(zhuǎn)時(shí)間:%fn",q->cptime); getch();void run(JCB *min)/min為正在運(yùn)行作業(yè) if(min=head)/先將要運(yùn)行的作業(yè)從隊(duì)列中分離出來(lái),此時(shí)的min是min head=min->next; min->next=NULL; else q=head;/形成循環(huán)對(duì)列 while(q->next!=min) q=q->next; q->next=min->next;/分離出最小作業(yè) min->starttime=tim
16、es;/計(jì)算作業(yè)運(yùn)行后的完成時(shí)間,周轉(zhuǎn)時(shí)間等等 min->state='R' min->finishtime=min->starttime+min->needtime; min->cycletime=(float)(min->finishtime-min->reachtime); min->cptime=(float)(min->cycletime/min->needtime); t1+=min->cycletime;/周轉(zhuǎn)時(shí)間之和 t2+=min->cptime;/帶全周轉(zhuǎn)時(shí)間之和 display(min
17、);/調(diào)用disp()函數(shù),顯示作業(yè)運(yùn)行情況 times+=min->needtime;/累加時(shí)間量 min->state='F'/完成狀態(tài) printf("n%s has been finished!npress any key to continue.n",min->name); free(min); /釋放 getch();void super() /計(jì)算隊(duì)列中作業(yè)的高響應(yīng)比 JCB *padv; padv=head; do if(padv->state='W'&&padv->reachti
18、me<=times) padv->super=(float)(times-padv->reachtime+padv->needtime)/padv->needtime; padv=padv->next; while(padv!=NULL);void final() /最后打印作業(yè)的平均周轉(zhuǎn)時(shí)間,平均帶權(quán)周轉(zhuǎn)時(shí)間 float s,t; t=t1/n; s=t2/n; getch(); printf("nn作業(yè)已經(jīng)全部完成!"); printf("n%d個(gè)作業(yè)的平均周轉(zhuǎn)時(shí)間是:%f",n,t); printf("
19、n%d個(gè)作業(yè)的平均帶權(quán)周轉(zhuǎn)時(shí)間是%f:nnn",n,s);void sjf()/ 最短作業(yè)優(yōu)先算法 JCB *min;/min表示最短作業(yè) int i,iden; system("cls"); inital(); for(i=0; i<n; i+)/n是作業(yè)個(gè)數(shù) p=min=head; iden=1; do if(p->state='W'&&p->reachtime<=times)/第一個(gè)作業(yè)times=0 if(iden)/第一個(gè)作業(yè)iden=1 min=p; iden=0; /iden=0 else if
20、(p->needtime<min->needtime)/判斷作業(yè)的長(zhǎng)短,min min=p; p=p->next; while(p!=NULL) ;/這個(gè)循環(huán)遍歷作業(yè)隊(duì)列,目的是找出最短的作業(yè),最后p=null,min指向最短作業(yè) if(iden) i-; /printf("ntime=%d:tno JCB submib.wait.",time); times+; if(times>100) printf("nruntime is too long.error"); getch(); else run(min); /調(diào)用ru
21、n()函數(shù) final(); /調(diào)用final()函數(shù)int main() /主函數(shù) printf("ntt最短作業(yè)優(yōu)先算法,按任意鍵繼續(xù)."); getch(); sjf();運(yùn)行結(jié)果:?jiǎn)蔚琅幚眄憫?yīng)比高者優(yōu)先算法:#include <stdio.h>#include <stdlib.h>#include <conio.h>int n;/全局變量nfloat T1=0,T2=0;/分別用來(lái)表示周轉(zhuǎn)時(shí)間和帶權(quán)周轉(zhuǎn)時(shí)間之和int times=0;struct jcb /作業(yè)控制塊 char name10; /作業(yè)名 int reachtim
22、e; /作業(yè)到達(dá)時(shí)間 int starttime; /作業(yè)開(kāi)始時(shí)間 int needtime; /作業(yè)需要運(yùn)行的時(shí)間 float super; /作業(yè)的響應(yīng)比 int finishtime; /作業(yè)完成時(shí)間 float cycletime; /作業(yè)周轉(zhuǎn)時(shí)間 float cltime; /作業(yè)帶權(quán)周轉(zhuǎn)時(shí)間 char state; /作業(yè)狀態(tài) struct jcb *next; /結(jié)構(gòu)體指針*ready=NULL,*p,*q;typedef struct jcb JCB;void inital()/建立作業(yè)控制塊隊(duì)列,先將其排成先來(lái)先服務(wù)的模式隊(duì)列 int i; printf("ntt輸
23、入作業(yè)數(shù):"); scanf("%d",&n); for(i=0; i<n; i+) p=(JCB*)malloc(sizeof(JCB);/聲明結(jié)點(diǎn) printf("tt輸入作業(yè)名:"); scanf("%s",p->name); p->reachtime=i;/第一個(gè)0秒到,第二個(gè)1秒到 printf("tt第%d個(gè)作業(yè)到達(dá)時(shí)間默認(rèn)為:%d",i+1,i); printf("ntt輸入作業(yè)要運(yùn)行的時(shí)間:"); scanf("%d",&a
24、mp;p->needtime); p->state='W'/狀態(tài)初始化為等待 p->next=NULL; if(ready=NULL)/如果是第一個(gè)結(jié)點(diǎn)的話執(zhí)行 ready=q=p; else/不是第一個(gè)結(jié)點(diǎn) q->next=p;/鏈接起來(lái) q=p;/q向后移動(dòng)一個(gè)結(jié)點(diǎn),ready始終指向第一個(gè) void display(JCB* q)/顯示作業(yè)運(yùn)行后的周轉(zhuǎn)時(shí)間及帶權(quán)周轉(zhuǎn)時(shí)間等 printf("n作業(yè)%s正在運(yùn)行,其運(yùn)行情況如下:n",q->name); printf("開(kāi)始運(yùn)行時(shí)刻:%dn",q->s
25、tarttime); printf("完成時(shí)刻:%dn",q->finishtime); printf("周轉(zhuǎn)時(shí)間:%fn",q->cycletime); printf("帶權(quán)周轉(zhuǎn)時(shí)間:%fn",q->cltime); printf("響應(yīng)比:%fn",q->super); getch();void run(JCB *p) /運(yùn)行作業(yè) if(p=ready)/先將要運(yùn)行的作業(yè)從隊(duì)列中分離出來(lái) ready=p->next; p->next=NULL; else q=ready; w
26、hile(q->next!=p) q=q->next; q->next=p->next; p->starttime=times;/計(jì)算作業(yè)運(yùn)行后的完成時(shí)間,周轉(zhuǎn)時(shí)間等等 p->state='R' p->finishtime=p->starttime+p->needtime; p->cycletime=(float)(p->finishtime-p->reachtime); p->cltime=(float)(p->cycletime/p->needtime); T1+=p->cycl
27、etime;/周轉(zhuǎn)時(shí)間之和 T2+=p->cltime;/帶全周轉(zhuǎn)時(shí)間之和 display(p);/調(diào)用disp()函數(shù),顯示作業(yè)運(yùn)行情況 times+=p->needtime;/累加時(shí)間量 p->state='F'/完成狀態(tài) printf("n%s has been finished!npress any key to continue.n",p->name); free(p); /釋放 getch();void super() /計(jì)算隊(duì)列中作業(yè)的高響應(yīng)比 JCB *padv; padv=ready; do if(padv->
28、state='W'&&padv->reachtime<=times) padv->super=(float)(times-padv->reachtime+padv->needtime)/padv->needtime; padv=padv->next; while(padv!=NULL);void final()/最后打印作業(yè)的平均周轉(zhuǎn)時(shí)間,平均帶權(quán)周轉(zhuǎn)時(shí)間 float s,t; t=T1/n; s=T2/n; getch(); printf("nn作業(yè)已經(jīng)全部完成!"); printf("n
29、%d個(gè)作業(yè)的平均周轉(zhuǎn)時(shí)間是:%f",n,t); printf("n%d個(gè)作業(yè)的平均帶權(quán)周轉(zhuǎn)時(shí)間是%f:nnn",n,s);void hrn()/高響應(yīng)比算法 JCB *min; int i,iden; system("cls"); inital(); for(i=0; i<n; i+) p=min=ready; iden=1; super(); do if(p->state='W'&&p->reachtime<=times) if(iden) min=p; iden=0; else if(
30、p->super>min->super) min=p; p=p->next; while(p!=NULL); if(iden) i-; times+; if(times>1000) printf("nruntime is too long.error."); getch(); else run(min); /調(diào)用run()函數(shù) final(); /調(diào)用run()函數(shù)int main() /主函數(shù) printf("tt響應(yīng)比高者優(yōu)先算法,按任意鍵繼續(xù)."); getch(); hrn(); getch();(2)、編寫(xiě)并調(diào)度一
31、個(gè)多道程序系統(tǒng)的作業(yè)調(diào)度模擬程序。 作業(yè)調(diào)度算法:采用基于先來(lái)先服務(wù)的調(diào)度算法??梢詤⒖颊n本中的方法進(jìn)行設(shè)計(jì)。 對(duì)于多道程序系統(tǒng),要假定系統(tǒng)中具有的各種資源及數(shù)量、調(diào)度作業(yè)時(shí)必須考慮到每個(gè)作業(yè)的資源要求。多道程序(基于先來(lái)先算服務(wù))#include <stdio.h>#include <stdlib.h> #define getjch(type) (type*)malloc(sizeof(type) #define N 10struct jcb /* 定義作業(yè)控制塊PCB */ char name10; float needtime; /*運(yùn)行時(shí)間*/float arr
32、ivetime;/*提交時(shí)刻*/float storageN;/*系統(tǒng)資源*/struct jcb* link; *ready=NULL,*pb=NULL,*p; typedef struct jcb JCB; float Tc,Ti,Wi,T=0;/*完成時(shí)刻,周轉(zhuǎn)時(shí)間,帶權(quán)周轉(zhuǎn)時(shí)間,時(shí)間量*/float TiSum=0,WiSum=0;/*平均周轉(zhuǎn)時(shí)間,帶權(quán)a平均周轉(zhuǎn)時(shí)間*/float sourceN;int n;void input(); /*輸入作業(yè)信息*/int space(); /* 返回就緒隊(duì)列中作業(yè)的數(shù)目*/void fcfs(); /*先來(lái)先服務(wù)算法*/void disp(J
33、CB *pr); /* 顯示相應(yīng)的作業(yè)*/void running(); /*運(yùn)行作業(yè)組*/void destroy(); /* 撤銷(xiāo)作業(yè)*/void input() /* 建立作業(yè)控制塊函數(shù)*/ int i,k,num; printf("請(qǐng)輸入所擁有的資源種類(lèi):");scanf("%d",&n);printf("輸入系統(tǒng)所擁有資源數(shù):n");for(i=0;i<n;i+)printf("資源%d:",i);scanf("%f",&sourcei); printf(&quo
34、t;n 輸入作業(yè)數(shù)量:");scanf("%d",&num); for(i=0;i<num;i+) printf("n 作業(yè)號(hào)%d:n",i);p=getjch(JCB); printf("輸入作業(yè)名:");scanf("%s",p->name); printf("輸入提交時(shí)間:");scanf("%f",&p->arrivetime);printf("輸入運(yùn)行時(shí)間:");scanf("%f"
35、,&p->needtime); printf("輸入所需資源數(shù):n");for(k=0;k<n;k+)printf("資源%d:",i);scanf("%f",&p->storagek); printf("n"); p->link=NULL; fcfs(); int space() int l=0; JCB* pr=ready; while(pr!=NULL) l+; pr=pr->link; return(l); void disp(JCB * pr) /*建立作業(yè)顯
36、示函數(shù),用于顯示當(dāng)前作業(yè)*/ int i;printf("n%6st%6st%6st","作業(yè)名","運(yùn)行時(shí)間","提交時(shí)刻");for(i=0;i<n;i+)printf("資源%dt",i);printf("n%6st%6.2ftt%6.2ft",pr->name,pr->needtime,pr->arrivetime);for(i=0;i<n;i+)printf("t%6.2f",pr->storagei);pri
37、ntf("n"); void destroy() /*建立作業(yè)撤消函數(shù)(作業(yè)運(yùn)行結(jié)束,撤消作業(yè))*/ free(p); void check()JCB *first,*fir,*p;int flag=0,i,test=0;first=pb;while(first&&(T>=first->arrivetime)&&(flag=0)for(i=0;i<n;i+)if(sourcei>=first->storagei)sourcei=sourcei-first->storagei;elsetest=1;if(te
38、st=0)p=first;first=first->link;p->link=NULL;if(ready=NULL)ready=p;elsefir=ready;while(fir->link!=NULL)fir=fir->link;fir->link=p;elseflag=1;pb=first;void fcfs()JCB *first,*second;int ins=0;if(pb=NULL)|(p->arrivetime<pb->arrivetime)p->link=pb;pb=p;elsefirst=pb;second=first->link;while(second!=NULL)if(p->arrivetime<second->arrivetime)p->link=second;second=NULL;first->link=p;ins=1;else first=first->link; second=second->link;if(ins=0)first->link=p;void running()JCB *pr;int i;printf("正在運(yùn)行的作業(yè)是:%
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 產(chǎn)后修復(fù)中心合同范本
- 勞務(wù)代管合同范本
- 加盟托管經(jīng)營(yíng)合同范本
- 出租吊車(chē)服務(wù)合同范本
- 單位代建房合同范例
- 2013版建設(shè)合同范本
- 單位監(jiān)控安裝合同范本
- 個(gè)人雇傭出海作業(yè)合同范本
- 加工貨款合同貨款合同范本
- 個(gè)人山林承包合同范本
- 資產(chǎn)運(yùn)營(yíng)總經(jīng)理崗位職責(zé)
- (完整文本版)日文履歷書(shū)(文本テンプレート)
- 110kV變電站專(zhuān)項(xiàng)電氣試驗(yàn)及調(diào)試方案
- 2023三年級(jí)語(yǔ)文下冊(cè) 第八單元 語(yǔ)文園地配套教案 新人教版
- 全國(guó)川教版信息技術(shù)八年級(jí)下冊(cè)第一單元第1節(jié) 《設(shè)計(jì)創(chuàng)意掛件》教學(xué)設(shè)計(jì)
- 2024時(shí)事政治必考試題庫(kù)(預(yù)熱題)
- DZ∕T 0215-2020 礦產(chǎn)地質(zhì)勘查規(guī)范 煤(正式版)
- 品質(zhì)部組織架構(gòu)圖構(gòu)
- 《幼兒園性教育》
- (高清版)TDT 1040-2013 土地整治項(xiàng)目制圖規(guī)范
- 《漏》公開(kāi)課一等獎(jiǎng)創(chuàng)新教案設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論