




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
C語言程序設(shè)計@SoochowUniversity1用typedef定義類型定義結(jié)構(gòu)體類型變量的方法結(jié)構(gòu)體變量的引用結(jié)構(gòu)體變量的初始化結(jié)構(gòu)體數(shù)組指向結(jié)構(gòu)體類型數(shù)據(jù)的指針用指針處理鏈表共用體枚舉類型Chap9
用戶自己建立數(shù)據(jù)類型C語言程序設(shè)計@SoochowUniversity29.7用typedef聲明新類型名C語言程序設(shè)計@SoochowUniversity3用typedef定義類型在已有的數(shù)據(jù)類型名的基礎(chǔ)上用typedef聲明新的類型名來代替已有的數(shù)據(jù)類型。typedef定義類型舉例 如: typedef
intINTEGER;
typedef
float
REAL; 在上述定義的基礎(chǔ)上,以下兩行等價: ①inti,j;floata,b; ②INTEGERi,j;
REALa,b;C語言程序設(shè)計@SoochowUniversity4用typedef定義類型typedef定義類型的功能和目的之一:適應(yīng)不同程序員的類型定義習(xí)慣 在上述例子中可以使熟悉FORTRAN的人能用INTEGER和REAL定義變量,以適應(yīng)他們的習(xí)慣。typedef定義類型的功能和目的之二:顧名思義
如果在一個程序中,一個整型變量用來計數(shù),可以: typedefintCOUNT;
COUNTi,j;即將變量i、j定義為COUNT類型,而COUNT等價于int,因此i、j是整型。在程序中將i、j定為COUNT類型,可以使人更一目了然地知道它們是用于計數(shù)的。5用typedef定義類型typedef定義類型的歸納:
聲明一個新的類型名的方法是:①先按定義變量的方法寫出定義體(如:int
i;)。②將變量名換成新類型名(如:將i換成COUNT)。③在最前面加typedef(如:typedef
int
COUNT)。④然后可以用新類型名去定義變量。typedef定義類型的重要說明:用typedef可以聲明各種類型名,但不能用來定義變量。用typedef只是對已經(jīng)存在的類型增加一個類型名,而沒有創(chuàng)造新的類型。typedef與#define有相似之處,但也有區(qū)別使用typedef有利于程序的通用與移植。C語言程序設(shè)計@SoochowUniversity69.1定義和使用結(jié)構(gòu)體變量C語言程序設(shè)計@SoochowUniversity7結(jié)構(gòu)體概述問題:一個學(xué)籍管理系統(tǒng)中,需要學(xué)生的學(xué)號、姓名、性別、年齡、成績、家庭地址等信息。這些項都與某一學(xué)生相聯(lián)系。見圖。處理方法之一:如果將num、name、sex、age、score、addr分別定義為互相獨立的簡單變量,缺點是難以反映它們之間的內(nèi)在聯(lián)系。處理方法之二:將這些信息定義在一起C語言程序設(shè)計@SoochowUniversity8結(jié)構(gòu)體概述結(jié)構(gòu)體類型定義聲明一個結(jié)構(gòu)體類型的一般形式為struct結(jié)構(gòu)體名{ 成員表列;};說明:注意最后的分號不能省略Struct:聲明結(jié)構(gòu)體類型必須使用的關(guān)鍵字,不能省略structstudent是一個類型名,它和系統(tǒng)提供的標準類型(如int、char、float、double等)一樣具有同樣的地位和作用,都可以用來定義變量的類型,只不過結(jié)構(gòu)體類型需要由用戶自己指定而已C語言程序設(shè)計@SoochowUniversity9結(jié)構(gòu)體概述結(jié)構(gòu)體類型定義舉例
struct
student { intnum;
char
name[20];
char
sex;
int
age;
float
score;
char
addr[30];
};C語言程序設(shè)計@SoochowUniversity10用typedef定義結(jié)構(gòu)體類型typedef可以簡化結(jié)構(gòu)體類型的聲明
typedef
struct { int
month;
int
day;
int
year; }DATE; 這時就可以用DATE定義變量:
DATEbirthday;(不要寫成structDATEbirthday;) DATE*p;(p為指向此結(jié)構(gòu)體類型數(shù)據(jù)的指針)typedefstruct
student{ intnum;
char
name[20];
char
sex;
int
age;
float
score;
char
addr[30];}StuStudent;C語言程序設(shè)計@SoochowUniversity11定義結(jié)構(gòu)體類型變量的方法1.先聲明結(jié)構(gòu)體類型再定義變量名如前面已定義了一個結(jié)構(gòu)體類型structstudent,可以用它來定義變量。如: structstudentstudent1,student2StuStudentstudent1,student2
結(jié)構(gòu)體類型名
結(jié)構(gòu)體變量名;定義了student1和student2為structstudent類型的變量,即它們具有structstudent類型的結(jié)構(gòu)。如圖所示。在定義了結(jié)構(gòu)體變量后,系統(tǒng)會為之分配內(nèi)存單元。例如student1和student2在內(nèi)存中各占59個字節(jié)(2+20+1+2+4+30=59)C語言程序設(shè)計@SoochowUniversity12定義結(jié)構(gòu)體類型變量的方法2.在聲明類型的同時定義變量例如
struct
student {int
num;
char
name[20];
char
sex;
int
age;
floatscore;
char
addr[30];
}student1,student2;這種形式的定義的一般形式為
struct結(jié)構(gòu)體名{成員表列
}變量名表列;缺點:
類型聲明和變量定義在一起C語言程序設(shè)計@SoochowUniversity13定義結(jié)構(gòu)體類型變量的方法3.直接定義結(jié)構(gòu)類型變量其一般形式為
struct {
成員表列
}變量名表列;說明:定義中不出現(xiàn)結(jié)構(gòu)體名不能用于再次定義變量C語言程序設(shè)計@SoochowUniversity14定義結(jié)構(gòu)體類型變量的方法關(guān)于結(jié)構(gòu)體類型,有幾點說明:(1)類型與變量是不同的概念,不要混同。只能對變量賦值、存取或運算,而不能對一個類型賦值、存取或運算。在編譯時,對類型是不分配空間的,只對變量分配空間。(2)對結(jié)構(gòu)體中的成員(即“域”),可以單獨使用,它的作用與地位相當(dāng)于普通變量。但其引用方式不同于普通變量,關(guān)于對成員的引用方法見后面。(3)成員也可以是一個結(jié)構(gòu)體變量。如:(4)成員名可以與程序中的變量名相同,二者不代表同一對象struct
date/*聲明一個結(jié)構(gòu)體類型*/{ int
month;
int
day;
int
year;};struct
student
{ int
num;
char
name[20];
char
sex;
int
age;
structdatebirthday;}student1,student2;C語言程序設(shè)計@SoochowUniversity15結(jié)構(gòu)體變量的引用引用的一般方式結(jié)構(gòu)體變量名.成員名說明"."成員運算符,優(yōu)先級最高,高于自增自減等單目運算符不能將一個結(jié)構(gòu)體變量作為一個整體進行輸入和輸出可以對變量的成員賦值,如:student1.num=10010;C語言程序設(shè)計@SoochowUniversity16結(jié)構(gòu)體變量的引用說明對結(jié)構(gòu)體變量的成員可以像普通變量一樣進行各種運算(根據(jù)其類型決定可以進行的運算)。例如:
student2.score=student1.score;
sum=student1.score+student2.score;
student1.age++;
++student1.age;可以引用結(jié)構(gòu)體變量成員的地址,也可以引用結(jié)構(gòu)體變量的地址。如:
scanf(“%d”,&student1.num);//輸入student1.num的值 printf(“%o”,&student1);//輸出student1的地址
C語言程序設(shè)計@SoochowUniversity17結(jié)構(gòu)體變量的初始化初始化方式之一:和其他類型變量一樣,對結(jié)構(gòu)體變量可以在定義時指定初始值。例如:
structstudent
{ longintnum;
charname[20];
charsex;
charaddr[20];
}a={89031,“LiLin”,‘M’,“123BeijingRoad”};初始化方法之二先定義結(jié)構(gòu)體變量,然后對結(jié)構(gòu)體變量的每一個分量進行單獨初始化C語言程序設(shè)計@SoochowUniversity18結(jié)構(gòu)體變量的初始化初始化方式之三利用賦值運算進行初始化,但進行賦值運算的結(jié)構(gòu)體變量類型必須一致。例如:structstudent{intnum;charname[20];charsex;intage;};structstudentstudent1,student2;student1.num=1020;student1.sex='F';student1.age=20;strcpy(,"LiMing");student2=student1;結(jié)構(gòu)體變量的使用舉例
假設(shè)學(xué)生有如下信息:學(xué)號姓名性別成績:5科課程的成績要求編寫程序完成如下操作:提供學(xué)生信息的錄入功能提供學(xué)生信息的顯示功能對每個學(xué)生的成績(從高到低)排序的功能C語言程序設(shè)計@SoochowUniversity19C語言程序設(shè)計@SoochowUniversity209.2使用結(jié)構(gòu)體數(shù)組C語言程序設(shè)計@SoochowUniversity21結(jié)構(gòu)體數(shù)組定義結(jié)構(gòu)體數(shù)組和定義結(jié)構(gòu)體變量的方法相仿,只需說明其為數(shù)組即可。如:
structstudent { intnum;
charname[20];
charsex;
intage;
floatscore;
charaddr[30];
};
structstudent
stu[3];C語言程序設(shè)計@SoochowUniversity22定義結(jié)構(gòu)體數(shù)組當(dāng)然也可以直接定義一個結(jié)構(gòu)體數(shù)組,如:
structstudent { intnum;
… }stu[3]; 或
struct { intnum;
… }stu[3];
數(shù)組各元素在內(nèi)存中連續(xù)存放,如圖所示@SoochowUniversity23結(jié)構(gòu)體數(shù)組的初始化與其他類型的數(shù)組一樣,對結(jié)構(gòu)體數(shù)組可以初始化如:
struct
student{
int
num;
char
name[20];
char
sex;
int
age;
float
score;
char
add[30];
}stu[3]={
{10101,"LiLin",'M',18,87.5,"103BeijingRoad"},
{10102,"ZhangFun",'M',19,99,"130Shanghai
Road"},
{10104,"WangMin",'F',20,78.5,"1010ZSRoad"}
};應(yīng)用舉例例1編寫一個候選人得票的統(tǒng)計程序。設(shè)有3個候選人,10個投票人。每次輸入一個得票的候選人的名字,要求最后輸出候選人各人得票結(jié)果。思路聲明一個結(jié)構(gòu)體類型,描述候選人信息(姓名和得票數(shù));定義該類型的結(jié)構(gòu)體數(shù)組,3個元素,同時賦初值;采用循環(huán)統(tǒng)計;采用循環(huán)顯示各位候選人的得票。應(yīng)用舉例例1(部分代碼)structperson{charname[20];intcount;};intmain(){
structpersonleader[3]={{"ZHANG",0},{"LI",0},{"WANG",0}};inti,j;charleader_name[20];printf("Pleaseinput:\n");聲明描述候選人信息的結(jié)構(gòu)體類型定義結(jié)構(gòu)體數(shù)組,并初始化應(yīng)用舉例例1(部分代碼)for(i=1;i<=10;i++){scanf("%s",leader_name);for(j=0;j<3;j++)if(strcmp(leader_name,leader[j].name)==0)
leader[j].count++;}printf("\nResult:\n");for(i=0;i<3;i++)printf("%5s:%d\n",leader[i].name,leader[i].count);return0;}應(yīng)用舉例例1(運行效果)應(yīng)用舉例例2編寫一個按成績排序輸出學(xué)生信息的程序。每個學(xué)生的信息包括學(xué)號、姓名、性別、成績。要求按照成績由高到低的順序,輸出各學(xué)生的信息。思路聲明一個結(jié)構(gòu)體類型,描述候?qū)W生信息;定義該類型的結(jié)構(gòu)體數(shù)組,若干個(設(shè)10個)元素,同時賦初值;按成績由高到低,對數(shù)組元素排序(選擇法);顯示數(shù)組元素(學(xué)生的信息)。應(yīng)用舉例例2(部分代碼)#defineCOUNT6intmain(intargc,char*argv[]){
structstudent
stu[COUNT]={{10101,"Zhang",'f',88},{10103,"Li",'f',93},{10104,"Wang",'m',76},{10108,"Ma",'f',68}, {10102,"Zhu",'f',83},{10105,"Hou",'m',92}};structstudenttemp;inti,j,k;定義結(jié)構(gòu)體數(shù)組時,賦初值由于篇幅,沒有列出結(jié)構(gòu)體類型的聲明一個結(jié)構(gòu)體變量應(yīng)用舉例例2(部分代碼)for(i=0;i<COUNT-1;i++){k=i;for(j=i+1;j<COUNT;j++)if(stu[j].score>stu[k].score)k=j;if(k!=i){temp=stu[i];stu[i]=stu[k];stu[k]=temp;}}//外循環(huán)選擇排序(根據(jù)成績,由高到低)交換操作,直接進行結(jié)構(gòu)體變量賦值如果要求按姓名排序,如何處理?應(yīng)用舉例例2(部分代碼)for(i=0;I<COUNT;i++){printf("%5d%8s(%c)%6.2f\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].score);}
return0;}依次顯示輸出結(jié)構(gòu)體數(shù)組中各學(xué)生的信息C語言程序設(shè)計@SoochowUniversity329.3結(jié)構(gòu)體指針C語言程序設(shè)計@SoochowUniversity33指向結(jié)構(gòu)體類型數(shù)據(jù)的指針指向結(jié)構(gòu)體變量的指針定義的一般形式結(jié)構(gòu)體類型名*指針變量名;結(jié)構(gòu)體變量的引用方式結(jié)構(gòu)體變量.成員名(*p).成員名p->成員名指向運算符->;優(yōu)先級高于單目運算符p->n:p->n++(p->n)++++p->n++(p->n)C語言程序設(shè)計@SoochowUniversity34指向結(jié)構(gòu)體數(shù)組的指針注意事項p++(++p)->num;++p;p->num;(p++)->num;p->num;p++;不允許用指向結(jié)構(gòu)體變量的指針指向結(jié)構(gòu)體變量的成員。如:p=&student1;p=;C語言程序設(shè)計@SoochowUniversity35結(jié)構(gòu)體變量和指向結(jié)構(gòu)體的指針作函數(shù)參數(shù)結(jié)構(gòu)體變量的成員作函數(shù)參數(shù)結(jié)構(gòu)體變量作函數(shù)參數(shù)指向結(jié)構(gòu)變量的指針作函數(shù)參數(shù)見書上例題(P301,P307)課后習(xí)題(P330,No.5)9.4用指針處理鏈表C語言程序設(shè)計@SoochowUniversity37用指針處理鏈表鏈表概述鏈表的基本概念鏈表是一種常見的重要的數(shù)據(jù)結(jié)構(gòu)。它是動態(tài)地進行存儲分配的一種結(jié)構(gòu)。為什么需要使用鏈表數(shù)組存放數(shù)據(jù)時,必須事先定義固定的長度(即元素個數(shù))。鏈表則沒有這種缺點,它根據(jù)需要開辟內(nèi)存單元。C語言程序設(shè)計@SoochowUniversity38鏈表概述“頭指針”變量:第一個元素,不存放任何數(shù)據(jù)。鏈表中每一個元素稱為“結(jié)點”,每個結(jié)點都應(yīng)包括兩個部分:一為用戶需要用的實際數(shù)據(jù),二為下一個結(jié)點的地址。最后一個元素,該元素不再指向其他元素,它稱為“表尾”,它的地址部分放一個“NULL”(表示“空地址”),鏈表到此結(jié)束。C語言程序設(shè)計@SoochowUniversity39鏈表概述鏈表在內(nèi)存中的存放特性鏈表中各元素在內(nèi)存中可以不是連續(xù)存放的。要找某一元素,必須先找到上一個元素,根據(jù)它提供的下一元素地址才能找到下一個元素。如果不提供“頭指針”(head),則整個鏈表都無法訪問。鏈表和指針的重要聯(lián)系這種鏈表的數(shù)據(jù)結(jié)構(gòu),必須利用指針變量才能實現(xiàn)。即:一個結(jié)點中應(yīng)包含一個指針變量,用它存放下一結(jié)點的地址。鏈表和結(jié)構(gòu)體類型的重要聯(lián)系結(jié)構(gòu)體變量用作鏈表中的結(jié)點是最合適的。一個結(jié)構(gòu)體變量包含若干成員,這些成員可以是數(shù)值類型、字符類型、數(shù)組類型,也可以是指針類型。我們用這個指針類型成員來存放下一個結(jié)點的地址。C語言程序設(shè)計@SoochowUniversity40鏈表概述用于鏈表的結(jié)構(gòu)體類型定義舉例:
struct
student
{int
num;
float
score;
struct
student*next;
};1010189.5numscorenext10103901010785C語言程序設(shè)計@SoochowUniversity41處理動態(tài)鏈表所需的函數(shù)動態(tài)鏈表操作中所需的函數(shù)void*malloc(unsignedsize)如:p=(int*)malloc(10*sizeof(int));void*calloc(unsignedn,unsignedsize)如:p=(int*)calloc(10,sizeof(int));
voidfree(void*p)如:free(p);
上述函數(shù)在使用過程中必須包含頭文件(stdlib.h)處理動態(tài)鏈表所需的函數(shù)例如:structstudent { intnum;
charname[20];
charsex;
intage;
floatscore;
charaddr[30];
};structstudent*pstuStudent;pstuStudent=(structstudent*)malloc(sizeof(structstudent));C語言程序設(shè)計@SoochowUniversity42C語言程序設(shè)計@SoochowUniversity43動態(tài)鏈表的創(chuàng)建申請頭結(jié)點空間保存頭地址依次申請后續(xù)結(jié)點的空間完成前后結(jié)點間的指向關(guān)系最后一個結(jié)點指向null見例題List_11_9.cC語言程序設(shè)計@SoochowUniversity44動態(tài)鏈表的操作查找操作查找data值為x的結(jié)點,并將指針定位到前一個結(jié)點:
q=head; p=head->next; while(p!=NULL){ if(p->data==x) break; q=p; p=p->next; }datadatadatadata……頭結(jié)點p——動態(tài)指針qC語言程序設(shè)計@SoochowUniversity45動態(tài)鏈表的操作插入操作在p的后面插入一個新結(jié)點s:s=(structNode*)malloc(sizeof(structNode));s->data=data;/*生成結(jié)點*/s->next=p->next;//s結(jié)點指向p的下一個結(jié)點p->next=s;datadatadatadata……pdatasC語言程序設(shè)計@SoochowUniversity46動態(tài)鏈表的操作刪除結(jié)點操作刪除p后面的結(jié)點:
s=p->next;//先讓s指向p的下一個結(jié)點 p->next=s->next; //p的next指向s的下一個結(jié)點 free(s);datadatadatadata……pC語言程序設(shè)計@SoochowUniversity47動態(tài)鏈表的整體刪除(釋放)操作從頭結(jié)點開始循環(huán)刪除(釋放)
p=head; while(p!=NULL) { q=p; p=p->next; free(q); }C語言程序設(shè)計@SoochowUniversity48動態(tài)鏈表的綜合操作舉例課后習(xí)題(P330,No.12)題目(P330,No.6):一群小孩按順序圍成一個圈,從第一個小孩開始順時針數(shù)數(shù),當(dāng)數(shù)到3時,則那個小孩退出圈。以此方式一直數(shù)下去,直到剩下最后一個小孩,求該小孩的編號。數(shù)據(jù)結(jié)構(gòu)structchild{intID;//小孩的編號structchild*pNext;//指向下一個小孩}9.5共用體類型C語言程序設(shè)計@SoochowUniversity50共用體共用體的概念共用體類型的概念有時需要使幾種不同類型的變量存放到同一段內(nèi)存單元中,以節(jié)省空間。實際占用的內(nèi)存是擁有最大內(nèi)存空間的變量所占用的空間。例如,可把一個整型變量、一個字符型變量、一個實型變量放在同一個地址開始的內(nèi)存單元中(見圖)。以上3個變量在內(nèi)存中占的字節(jié)數(shù)不同,但都從同一地址開始(圖中設(shè)地址為1000)存放。 也就是使用覆蓋技術(shù),幾個變量互 相覆蓋。這種使幾個不同的變量共 占同一段內(nèi)存的結(jié)構(gòu),稱為“共用 體”類型的結(jié)構(gòu)。圖11.24C語言程序設(shè)計@SoochowUniversity51共用體的概念定義共用體類型變量的一般形式
union共用體名
{
成員表列
}變量表列; 例如:
uniondata{ inti;
charch;
floatf;
}a,b,c; 也可以直接定義共用體變量union{
inti;charch;floatf;}a,b,c;也可以將類型聲明與變量定義分開:uniondata {inti; charch;
floatf; }; uniondata
a,b,c; C語言程序設(shè)計@SoochowUniversity52共用體的概念“共用體”與“結(jié)構(gòu)體”的比較結(jié)構(gòu)體變量所占內(nèi)存長度是各成員占的內(nèi)存長度之和。每個成員分別占有其自己的內(nèi)存單元。共用體變量所占的內(nèi)存長度等于最長的成員的長度。例如,上面定義的“共用體”變量a、b、c共占4個字節(jié)(因為一個實型變量占4個字節(jié)),而不是各占2+1+4=7個字節(jié)。結(jié)構(gòu)體變量的各個成員是同時存在的,共用體變量在任何時刻只有一個成員存在、有效。共用體變量的引用與結(jié)構(gòu)體變量的引用相同C語言程序設(shè)計@SoochowUniversity53共用體類型數(shù)據(jù)的特點在使用共用體類型數(shù)據(jù)時要注意以下一些特點:(1)同一個內(nèi)存段可以用來存放幾種不同類型的成員,但在每一瞬時只能存放其中一種,而不是同時存放幾種。也就是說,每一瞬時只有一個成員起作用,其他的成員不起作用,即不是同時都存在和起作用。(2)共用體變量中起作用的成員是最后一次存放的成員,在存入一個新的成員后原有的成員就失去作用。
a.i=1;
a.c='a';
a.f=1.5; 在完成以上3個賦值運算以后,只有a.f是有效的,a.i和a.c已經(jīng)無意義了。此時用printf("%d",a.i)是不行的,而用printf("%f",a.f)是可以的,因為最后一次的賦值是向a.f賦值。C語言程序設(shè)計@SoochowUniversity54共用體類型數(shù)據(jù)的特點在使用共用體類型數(shù)據(jù)時要
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030中國真絲圍巾行業(yè)發(fā)展趨勢與投資戰(zhàn)略研究報告
- 2025-2030中國百香果汁糖漿行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 2025-2030中國男鞋行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025年工廠員工安全培訓(xùn)考試試題附完整答案【必刷】
- 2025廠級員工安全培訓(xùn)考試試題黃金題型
- 洞口抹灰施工方案
- 2024-2025項目部安全培訓(xùn)考試試題答案黃金題型
- 2025年新入職工入職安全培訓(xùn)考試試題(4A)
- 25年公司廠級員工安全培訓(xùn)考試試題(精練)
- 2025年工廠員工安全培訓(xùn)考試試題附完整答案(各地真題)
- 廣東省廣州市白云區(qū)2023-2024學(xué)年八年級上學(xué)期期末英語試題(答案)
- 品管圈PDCA案例-提高成人術(shù)后疼痛評估與護理規(guī)范率醫(yī)院品質(zhì)管理成果匯報
- 我的家鄉(xiāng)湖南岳陽
- 《QOHAB123-2023高端G系列冷鐓鋼用熱軋盤條》
- 揚塵防治(治理)監(jiān)理實施細則(范本)
- 華為智慧礦山解決方案
- 幼兒園辦園行為督導(dǎo)評估指標體系表
- 房地產(chǎn)項目能源管理制度制定
- 核心素養(yǎng)下小學(xué)道德與法治實踐性作業(yè)設(shè)計探究
- DB11∕T 161-2012 融雪劑 地方標準
- 會務(wù)活動質(zhì)量保障措施
評論
0/150
提交評論