版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第5章循環(huán)結(jié)構(gòu)程序設(shè)計while語句2do-while語句3for語句4循環(huán)的嵌套5goto語句以及用goto語句構(gòu)成循環(huán)6任務(wù)3——公司員工薪水計算1break語句和continue語句7問
題公司需要計算每一位員工的薪水,實行的是計時工資制,按照實際工作的時間(小時),與每小時的報酬進行計算員工所得薪水,并統(tǒng)計出公司支付的總薪水。分
析解決這個問題,首先需要知道公司的員工數(shù)量,用變量Number表示,每個員工的工作時間(Hours)及每小時的報酬(Rate)。多位員工薪水的計算是一件重復(fù)的工作,可以通過循環(huán)來實現(xiàn)。任務(wù)3——公司員工薪水計算1數(shù)據(jù)需要循環(huán)變量i輸入數(shù)據(jù)intnumber/*存放員工數(shù)*/floathours,rate/*存放工作時間,每小時報酬數(shù)*/輸出數(shù)據(jù)floatpay/*每個員工的薪水*/floatpayroll/*公司支付的總薪水*/設(shè)
計1.獲取數(shù)據(jù):公司的員工數(shù),循環(huán)取得各個員工的工作時間和每小時報酬數(shù)。循環(huán)體內(nèi)容:(1)計算員工的薪水:pay=hours*rate。(2)顯示員工的薪水。(3)統(tǒng)計公司支付總薪水:payroll+=pay。2.顯示公司支付總薪水。程序流程圖實
現(xiàn)
#include<stdio.h>main(){inti,number;floathours,rate,pay=0;doublepayroll=0;printf("\n請輸入公司員工數(shù):");scanf("%d",&number);for(i=0;i<number;i++){printf("\n工作時間:");scanf("%f",&hours);printf("\n每小時工作報酬:¥");scanf("%f",&rate);pay=hours*rate;printf("\n薪水是:¥%f",pay);payroll+=pay;}printf("\n所有員工薪水計算完畢!");printf("\n公司支付總薪水是:¥%.2f\n",payroll);}while語句用來實現(xiàn)“當型”循環(huán)結(jié)構(gòu)。其一般形式如下:while(表達式)語句while語句2例5-1求
main(){intn,sum=0;n=1;
while(n<=100)/*while條件滿足時,執(zhí)行循環(huán)體*/{sum=sum+n;n++;}printf("%d\n",sum);}do-while語句,實現(xiàn)“直到型”循環(huán)結(jié)構(gòu)。其一般形式為
do
循環(huán)語句while(表達式);do-while語句3例5-2用do-while語句求main(){intn,sum=0;n=1;do{sum=sum+n;n++;}while(n<=100);printf("%d\n",sum);}例5-3while和do-while循環(huán)的比較main(){intsum=0,i;scanf("%d",&i);while(i<=10)
{sum=sum+i;i++;}printf("sum=%d\n",sum);}main(){intsum=0,i;
scanf("%d",&i);do{sum=sum+i;
i++;}while(i<=10);printf("sum=%d\n",sum);}1↙sum=5511↙sum=0
1↙sum=5511↙sum=11
for語句的一般形式為
for(表達式1;表達式2;表達式3)語句for語句4它的執(zhí)行過程如下:1.求解表達式1。2.求解表達式2,若其值為真(值為非0),則執(zhí)行for語句中指定的內(nèi)嵌語句,然后執(zhí)行下面第(3)步。若為假(值為0),則結(jié)束循環(huán),轉(zhuǎn)到第(5)步。3.求解表達式3。4.轉(zhuǎn)回上面第(2)步繼續(xù)執(zhí)行。5.循環(huán)結(jié)束,執(zhí)行for語句下面的一個語句。
for語句最簡單的應(yīng)用形式也就是最易理解的形式:for(循環(huán)變量賦初值;循環(huán)條件;循環(huán)變量增值)語句
例如:for(i=1;i<=100;i++)sum=sum+i;可以看到它相當于以下語句:i=1;while(i<=100){sum=sum+i;i++;}for語句的變化形式(1)for語句的一般形式中的“表達式1”可以省略,此時應(yīng)在for語句之前給循環(huán)變量賦初值。注意省略表達式1時,其后的分號不能省略。如for(;i<=100;i++)sum=sum+i;執(zhí)行時,跳過“求解表達式1”這一步,其他不變。(2)如果表達式2省略,即不判斷循環(huán)條件,循環(huán)無終止地進行下去。也就是認為表達式2始終為真。例如:for(i=1;;i++)sum=sum+i;表達式1是一個賦值表達式,表達式2空缺。它相當于:i=1;while(1){sum=sum+1;i++;}for語句的變化形式(3)表達式3也可以省略,但此時程序設(shè)計者應(yīng)另外設(shè)法保證循環(huán)能正常結(jié)束。如:for(i=1;i<=100;){sum=sum+i;
i++;}在上面的for語句中只有表達式1和表達式2,而沒有表達式3。i++的操作不放在for語句的表達式3的位置處,而作為循環(huán)體的一部分,效果是一樣的,都能使循環(huán)正常結(jié)束。(4)可以省略表達式1和表達式3,只有表達式2,即只給循環(huán)條件。如:for(;i<=100;)while(i<=100){{sum=sum+i;相當于sum=sum+i;i++;i++;}}在這種情況下,完全等同于while語句。可見for語句比while語句功能強,除了可以給出循環(huán)條件外,還可以賦初值,使循環(huán)變量自動增值等。
for語句的變化形式(5)三個表達式都可省略,如:for(;;)語句相當于while(1)語句即不設(shè)初值,不判斷條件(認為表達式2為真值),循環(huán)變量不增值。無終止地執(zhí)行循環(huán)體。for語句的變化形式(6)表達式1可以是設(shè)置循環(huán)變量初值的賦值表達式,也可以是與循環(huán)變量無關(guān)的其他表達式。如:for(sum=0;i<=100;i++)sum=sum+i;表達式3也可以是與循環(huán)控制無關(guān)的任意表達式。表達式1和表達式3可以是一個簡單的表達式,也可以是逗號表達式,即包含一個以上的簡單表達式,中間用逗號間隔。如:for(sum=0,i=1;i<=100;i++)sum=sum+i;或for(i=0,j=100;i<=j;i++,j--)k+=i*j;表達式1和表達式3都是逗號表達式,各包含兩個賦值表達式,即同時設(shè)兩個初值,使兩個變量增值for語句的變化形式(7)表達式一般是關(guān)系表達式(如i<=100)或邏輯表達式(如a<b&&x<y),但也可以是數(shù)值表達式或字符表達式,只要其值為非零,就執(zhí)行循環(huán)體。分析下面兩個例子:①for(i=0;(c=getchar())!='\n';i+=c);在表達式2中先從終端接收一個字符賦給c,然后判斷此賦值表達式的值是否不等于'\n'(換行符),如果不等于'\n',就執(zhí)行循環(huán)體。此for語句的執(zhí)行過程見圖,它的作用是不斷輸入字符,將它們的ASCII碼相加,直到輸入一個換行符為止。for語句的變化形式②for(;(c=getchar())!='\n';)printf("%c",c);只有表達式2,而無表達式1和表達式3。其作用是每讀入一個字符后立即輸出該字符,直到輸入一個換行符為止。請注意,從終端鍵盤向計算機輸入時,是在按Enter鍵以后才送到內(nèi)存緩沖區(qū)中去的。運行情況:Computer↙(輸入)Computer(輸出)而不是CCoommppuutteerr即不是從終端敲入一個字符馬上輸出一個字符,而是按Enter鍵后數(shù)據(jù)送入內(nèi)存緩沖區(qū),然后每次從緩沖區(qū)讀一個字符,再輸出該字符
循環(huán)的嵌套5一個循環(huán)體內(nèi)又包含另一個完整的循環(huán)結(jié)構(gòu),稱為循環(huán)的嵌套。內(nèi)嵌的循環(huán)中還可以嵌套循環(huán),這就是多層循環(huán)。例5-4假設(shè)有6個班,每班有20名學生,分別求出各班成績的平均分。(1)要計算1個班20個學生的考試成績平均分,只需要把輸入學生成績和累加學生成績這兩條命令重復(fù)執(zhí)行20遍,就可得到該班的成績和,再除以該班人數(shù)就得到該班平均分。輸出1個班的平均值,可用如下代碼實現(xiàn):
s=0;for(n=1;n<=20;n++){scanf("%f",&x);/*輸入學生成績*/s=s+x;/*累加學生成績*/}pritnf("%f\n",s/20);/*計算并輸出該班成績平均值*/(2)要得到6個班的平均成績,只需將上面的程序運行6遍。即在上面程序的外面再加一層循環(huán)。i表示班數(shù)。for(i=1;i<=6;i++){
輸出1個班的平均值
}程序如下:main(){intm=0,n=0;floats=0,x=0;
for(i=1;i<=6;i++)/*循環(huán)計算6個班的平均成績*/{
s=0;for(n=1;n<=20;n++)/*循環(huán)輸入20個學生成績*/{scanf("%f",&x);/*輸入學生成績*/s=s+x;/*累加學生成績*/}
printf("%f\n",s/20);/*計算并輸出該班成績平均值*/}}注意:(1)上面程序for語句的循環(huán)體內(nèi)又包含了另一個for循環(huán),這種形式稱為循環(huán)嵌套。(2)由于每一個班的成績求和都是存放在s變量中,因此當要輸入下一個班的成績時,先要對s變量清零。所以s=0不能放在外層循環(huán)體外。(3)對于需要輸入較多的數(shù)據(jù),在程序設(shè)計中最好加入一些提示信息,如“請輸入××班××號學生成績:”,使程序與用戶之間有較好的親和力,也便于數(shù)據(jù)輸入。程序修改如下:main(){inti,n;floats=0,x=0;
for(i=1;i<=6;i++){s=0;for(n=1;n<=20;n++){printf("Input%dclassno.%d:",i,n);/*輸入提示信息*/scanf("%f",&x);s=s+x;
}
printf("%dclassaverage:%f\n",i,s/20);}}
例5-5打印如圖5-11所示的圖形。* *****
** *****
*** *****
**** *****
***** *****
圖5-11三角形星
圖5-12長方形星(1)如果打印的圖形每行都打印5個*,共打印5行(如圖5-12所示),用一條循環(huán)程序就可實現(xiàn):for(i=1;i<6;i++)/*i確定打印的行數(shù)*/printf("*****\n");但題目要求圖形每行打印的星的個數(shù)不同。第1行打印1個星,第2行打印2個星……第5行打印5個星。所以用一條確定打印5個星的語句不能實現(xiàn)該功能。
(2)要實現(xiàn)每行打印不同個數(shù)的星,只能用程序來控制輸出星的個數(shù)。用下面的循環(huán)語句便能實現(xiàn)這個功能,當i=1時,該循環(huán)被執(zhí)行一次,打印出1個星;當i=2時,該循環(huán)被執(zhí)行2次,打印出2個星;每次循環(huán)結(jié)束,輸出1個換行符,即每輸出一行就換行。所以只要i從1增加到5,就能輸出所要求的圖形,代碼如下:for(j=1;j<=i;j++)/*j確定打印星的個數(shù)*/printf("*");printf("\n");/*打印完一行星后輸出一個換行符*/
(3)要實現(xiàn)i從1增加到5,只需在上面的循環(huán)語句外再加上一層循環(huán)“for(i=1;i<6;i++)”即可。程序如下:main(){inti,j;for(i=1;i<=5;i++)/*i確定打印的行數(shù)*/{for(j=1;j<=i;j++)/*j確定打印*的個數(shù)*/printf("*");printf("\n");/*打印完一行*后輸出一個換行*/}}注意:(1)內(nèi)層循環(huán)的循環(huán)條件不是一個確定的值,是與外層循環(huán)變量有關(guān)的,所以內(nèi)層循環(huán)體的執(zhí)行次數(shù)每次都不同。(2)外層循環(huán)決定要打印的行數(shù),內(nèi)層循環(huán)決定一行打印的星數(shù)。要注意每一行星打印完后要輸出一個換行符。例5-6公雞5元1只,母雞3元1只,小雞1元3只,100元錢買100只雞,且每種雞都要有,問可以各買多少只,并輸出所有可能的方案。(1)假設(shè)可以買x只公雞,y只母雞,z只小雞;根據(jù)以上給出的條件,可以列出以下兩個方程式:x+y+z=1005x+3y+z/3=1002個方程式解不出3個未知數(shù),這是一個不定方程,但可以采用假設(shè)的方法,假設(shè)買1只公雞,1只母雞,98只小雞,算算是否要花100元;再假設(shè)買1只公雞,2只母雞,97只小雞,再判斷是否要花100元。如果正好100元,這就是一種方案。逐一改變買公雞、母雞和小雞的數(shù),從中找出滿足100元的方案,這種算法稱為枚舉法,也稱窮舉法。(2)100只雞,并且每種雞都要有,所以公雞最少要買1只,最多可以買98只,同樣,母雞最少也要買1只,最多可以買98只,小雞數(shù)可根據(jù)公式z=100-x-y得到。要使每種情況都測試到,可以采用二重循環(huán)來實現(xiàn)。for(x=1;x<=98;x++){for(y=1;y<=98;y++){z=100-x-y;if(5*x+3*y+z/3==100){輸出公雞、母雞、小雞數(shù)}}
}
(3)考慮到小雞1元3只,所以小雞數(shù)應(yīng)是3的倍數(shù),判斷條件改為“z%3==0&&5*x+3*y+z/3==100”。程序如下:main(){intx,y,z;for(x=1;x<=98;x++)/*公雞數(shù)的變化范圍*/for(y=1;y<=98;y++)/*母雞數(shù)的變化范圍*/{z=100-x-y;/*計算出小雞數(shù)*/if(z%3==0&&5*x+3*y+z/3==100)/*判斷是否用100元錢*/printf("cock=%dhen=%dchicken=%d\n",x,y,z);}}
運行結(jié)果:cock=4hen=18chicken=78cock=8hen=11chicken=81cock=12hen=4chicken=84
注意:(1)100元即使都買公雞,最多也只能買20只,何況還要買母雞和小雞,所以公雞數(shù)只能從1變化到19。同樣母雞也只能從1變化到32。合理的選擇循環(huán)次數(shù),將提高程序的運行效率。程序修改如下:main(){intx,y,z;
for(x=1;x<=19;x++)/*公雞數(shù)的變化范圍*/for(y=1;y<=32;y++)/*母雞數(shù)的變化范圍*/{z=100-x-y;/*計算出小雞數(shù)*/if(z%3==0&&5*x+3*y+z/3==100)printf("cock=%dhen=%dchicken=%d\n",x,y,z);}}(2)本題不管將公雞數(shù)作為外循環(huán)變量,還是將母雞數(shù)作為外循環(huán)變量,都能輸出所有方案,但程序的執(zhí)行效率不一樣。本程序中“x=1”需要執(zhí)行1次,“y=1”執(zhí)行19次,但如果將母雞作為外循環(huán)變量,“y=1”需要執(zhí)行1次,“x=1”執(zhí)行32次,多執(zhí)行13次賦值語句,會降低效率。goto語句以及用goto語句構(gòu)成循環(huán)6goto語句為無條件轉(zhuǎn)向語句,它的一般形式為:goto語句標號;
語句標號用標識符表示,它的命名規(guī)則與變量名相同,即由字母、數(shù)字和下劃線組成,其第一個字符必須為字母或下劃線。不能用整數(shù)來作標號。例5-7用if語句和goto語句構(gòu)成循環(huán),求main(){inti,sum=0;i=1;loop:if(i<=100){sum=sum+i;i++;gotoloop; }printf("%d\n",sum);}
break語句用來從循環(huán)體內(nèi)跳出循環(huán)體,即提前結(jié)束循環(huán)。如:for(r=1;r<=10;r++){area=pi*r*r;
if(area>100)break;printf("%f",area);}break語句不能用于循環(huán)語句和switch語句之外的任何其他語句中和continue語句7break語句continue語句其作用為結(jié)束本次循環(huán),即跳過循環(huán)體中下面尚未執(zhí)行的語句,接著進行下一次是否執(zhí)行循環(huán)的判定。continue語句和break語句的區(qū)別是:continue語句只結(jié)束本次循環(huán),而不是終止整個循環(huán)的執(zhí)行。break語句則是結(jié)束整個循環(huán)過程,不再判斷執(zhí)行循環(huán)的條件是否成立。例5-8把100~200之間的不能被3整除的數(shù)輸出。main(){intn;for(n=100;n<=200;n++){if(n%3==0)continue;printf("%d",n);}}
小型案例問題一位建筑師需要編寫一個程序來估算太陽能式房屋的采光面積。采光面積的確定需要考慮很多因素,包括一年中最冷的月份的平均采暖度天數(shù)(室內(nèi)外平均溫差與該月天數(shù)的乘積),房屋面積每平方英尺需要的熱能,房屋面積,以及采光方法的效率。該程序要訪問兩個數(shù)據(jù)文件:hdd.txt包含的數(shù)字表示的是12個月該建筑位置的平均采暖度天數(shù);solar.txt包含的是每個月太陽的平均日照強度(指太陽投射到指定位置每平方英尺上的射線等級)。每個文件的第一項代表的是1月份的數(shù)據(jù),第二項代表的是2月份的數(shù)據(jù),依此類推。分析采光面積(A)的估算公式為:A=heatloss是熱能需求、房屋面積和采暖度天數(shù)的乘積??梢酝ㄟ^采光方法的效率乘以平均日強度再乘以天數(shù)來計算必需的熱源。在本書前面所介紹的所有程序中,程序的數(shù)據(jù)都是從兩個輸入源(鍵盤或者數(shù)據(jù)文件)輸入的。而本程序中將使用三個輸入源:兩個數(shù)據(jù)文件和鍵盤(“文件”的知識在第11章詳細講解)。下面來確定問題的數(shù)據(jù)需求并寫出初始算法。數(shù)據(jù)需求問題輸入平均采暖度天數(shù)文件平均日照強度文件heat_deg_days /*平均采暖度天數(shù)*/coldest_mon /*最冷的月份(數(shù)字1..12)*/solar_insol /*最冷月的平均日照強度*/heating_req /*每平方英尺所需熱能*/efficiency /*采光效率*/floor_space /*房屋面積*/程序變量energy_resrc /*在最冷的月份,可用的太陽能*/問題輸出heat_loss /*在最冷的月份損失的熱能*/collect_area /*估算的采光面積*/設(shè)計初始算法1.確定最冷的月份,以及該月的平均采暖度天數(shù)。2.找出這個最冷月份的每平方英尺的平均日照強度。3.從用戶那里獲取其他問題輸入:heating_req、efficiency和floor_space。4.估算所需的采光面積。5.顯示結(jié)果。如圖5-15中的結(jié)構(gòu)圖所示,步驟2應(yīng)該設(shè)計為一個單獨的函數(shù)。函數(shù)nth_item應(yīng)該從文件solar.txt中找到與最冷月份對應(yīng)的數(shù)據(jù)。步驟3和步驟5很簡單,只有步驟1和步驟4需要進一步細化。步驟1細化在細化步驟中要引入3個新的變量——一個計數(shù)器ct,用于跟蹤在平均采暖度天數(shù)文件中的位置;一個整型變量,用于記錄文件狀態(tài);還有一個整型變量next_hdd,用于順序保存每個采暖度天數(shù)的值。增加的程序變量ct/*跟蹤在平均采暖度天數(shù)文件中的位置*/status/*記錄文件狀態(tài)*/next_hdd/*保存每個采暖度天數(shù)的值*/1.1從采暖度天數(shù)文件中掃描第1個值,保存到heat_deg_days中,并將coldest_mon初始化為1。1.2將ct初始化為2。1.3從該文件中掃描一個值放在next_hdd中,并保存status。1.4只要不是錯誤數(shù)據(jù)或者到達文件末尾,就重復(fù)下面的步驟:1.5如果next_hdd大于heat_deg_days。1.6將next_hdd復(fù)制到heat_deg_days中。1.7將ct復(fù)制到coldest_mon中。1.8ct加1。1.9從該文件掃描一個值放在next_hdd中,并保存status。步驟4細化4.1heating_req、floor_space和heat_deg_days相乘得出heat_loss。4.2efficiency(轉(zhuǎn)換為百分比)、solar_insol和最冷月份的天數(shù)相乘得出energy_resrc。4.3heat_loss除以energy_resrc得出collect_area。將結(jié)果四舍五入到最接近的整數(shù)(平方英尺)。實現(xiàn)應(yīng)該開發(fā)一個單獨的函數(shù)來找出步驟4.2所需要的某月份的天數(shù)。輸入文件hdd.txt:995900750400180201010602906101051輸入文件solar.txt:5007501100149019002100205015501200900500500函數(shù)函數(shù)nth_item和days_in_month很簡單,在此不再詳細解釋,只在下面程序中列出。下面是完整的程序,能大略地估算出特定地理位置上太陽能式房屋的采光面積。#include<stdio.h>intdays_in_month(int);intnth_item(FILE*,int);main(){intheat_deg_days,solar_insol,coldest_mon,heating_req,efficiency,collect_area,ct,status,next_hdd;doublefloor_space,heat_loss,energy_resrc;FILE*hdd_file;FILE*solar_file;hdd_file=fopen("hdd.txt","r");fscanf(hdd_file,"%d",&heat_deg_days);coldest_mon=1;ct=2;status=fscanf(hdd_file,"%d",&next_hdd);while(status==1){if(next_hdd>heat_deg_days){heat_deg_days=next_hdd;coldest_mon=ct;}++ct;status=fscanf(hdd_file,"%d",&next_hdd);}fclose(hdd_file);solar_file=fopen("solar.txt","r");solar_insol=nth_item(solar_file,coldest_mon);fclose(solar_file);
printf("\nWhatistheapproximateheatingrequirement(Btu/");printf("degreedayft^2)\nofthistypeofconstruction?\n=>");scanf("%d",&heating_req);printf("\nWhatpercentofsolarinsolationwillbeconverted");printf("tousableheat?\n=>");scanf("%d",&efficiency);p
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年家用光伏產(chǎn)品銷售與光伏農(nóng)業(yè)應(yīng)用協(xié)議2篇
- 二零二五年度2025年度農(nóng)村房屋出售委托代理協(xié)議3篇
- 2024清淤施工合同風險評估與防范范本3篇
- 二零二五年度荒山林業(yè)資源承包管理合同3篇
- 二零二五年度小柜子汽車配件生產(chǎn)線設(shè)備采購合同2篇
- 二零二五年度帶購房協(xié)議轉(zhuǎn)讓的房產(chǎn)交易稅費承擔合同3篇
- 醫(yī)療機構(gòu)運營管理委托合同
- 2024年財務(wù)盡職調(diào)查咨詢協(xié)議3篇
- 二零二五年度加油站加油站設(shè)施設(shè)備租賃與維修合同3篇
- 2024預(yù)制橋梁箱梁制作安裝勞務(wù)協(xié)議版B版
- 原有建筑保護施工方案范本
- 土地整治投標方案(完整技術(shù)標)
- 銷售訂單評審表
- 某煤礦潰倉事故專項安全風險辨識評估報告示例
- 《光是如何傳播的》說課稿
- 【幼兒園班本課程研究文獻綜述4100字(論文)】
- 上頜竇瘺修補術(shù)課件
- 支部書記辭職申請書
- 碾壓砼壩異種混凝土同步澆筑上升施工工法
- 屋面及防水工程施工(第二版)PPT完整全套教學課件
- 現(xiàn)場生命急救知識與技能學習通期末考試答案2023年
評論
0/150
提交評論