版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第3章基本算法本章要點:算法的特征算法的表示方法程序設(shè)計的基本算法掌握程序的基本結(jié)構(gòu)第3章基本算法本章要點:13.1程序與算法程序包括:(1)對數(shù)據(jù)的描述數(shù)據(jù)結(jié)構(gòu)(2)對數(shù)據(jù)處理的描述算法算法(algorithm)是對特定問題求解步驟的一種描述??蓪⒊绦蚩偨Y(jié)為:程序=算法+數(shù)據(jù)結(jié)構(gòu)+程序設(shè)計方法+語言工具和環(huán)境3.1程序與算法程序包括:2C語言算法的主要特點如下:1.有窮性一個算法應(yīng)該包含有限的操作步驟,而不能是無限的。
2.確定性算法中的每一個步驟應(yīng)當(dāng)是確定的,而不應(yīng)當(dāng)是含糊的(多義性),應(yīng)是十分明確無誤的。
3.有0個或多個輸入。4.有一個或多個輸出。5.有效性算法中的每一個步驟都應(yīng)當(dāng)有效的執(zhí)行,并得到確定的結(jié)果。3.2算法的特征C語言算法的主要特點如下:3.2算法的特征3
3.3算法的表示方法(1)自然語言描述法(2)傳統(tǒng)的流程圖表示
常用符號有:(3)N-S流程圖表示(4)偽代碼表示算法(5)計算機(jī)語言表示算法起止框輸入/輸出框判斷框處理框流程線連接點3.3算法的表示方法(1)自然語言描述法起止框輸4一、順序結(jié)構(gòu)
BA(a)AB(b)先執(zhí)行A操作,再執(zhí)行B操作,兩者是順序執(zhí)行關(guān)系。N-S結(jié)構(gòu)流程圖結(jié)構(gòu)化程序設(shè)計的三種基本機(jī)構(gòu)一、順序結(jié)構(gòu)5二、選擇結(jié)構(gòu)當(dāng)P條件為真時,執(zhí)行A模塊,否則執(zhí)行B模塊。APB真假(a)P真假AB(b)二、選擇結(jié)構(gòu)當(dāng)P條件為真時,執(zhí)行A模塊,否則執(zhí)行B模塊。AP6三、循環(huán)結(jié)構(gòu)當(dāng)P條件成立時,反復(fù)執(zhí)行A,直到P為假。1.當(dāng)型循環(huán)結(jié)構(gòu)PA假真(a)當(dāng)P為真A(b)當(dāng)P為真三、循環(huán)結(jié)構(gòu)當(dāng)P條件成立時,反復(fù)執(zhí)行A,直到P為假。1.當(dāng)型72.直到型循環(huán)結(jié)構(gòu)先執(zhí)行A操作,再判斷P是否為假,若P為假,再執(zhí)行A,直到P為真為止。AP假真
(a)A直到P為真
(b)2.直到型循環(huán)結(jié)構(gòu)先執(zhí)行A操作,再判斷P是否為假,若P為假,8算法舉例1:對一個大于2的正整數(shù),判斷它是不是一個素數(shù)。方法:將n(其中n>2)作為被除數(shù),將2到(n-1)各個整數(shù)輪流作為除數(shù),如果都不能被整除,則n為素數(shù)。算法表示如下:S1:輸入n的值S2:2i(i作為除數(shù))
S3:n被i除,得余數(shù)rS4:如果r等于0,表示n能被i整除,則打印n“不是素數(shù)”,算法結(jié)束;否則執(zhí)行S5S5:i+1iS6:如果in-1,返回S3;否則,打印n“是素數(shù)”,算法結(jié)束。算法舉例1:對一個大于2的正整數(shù),判斷它是不是一個素數(shù)。9算法舉例2:求1-1/2+1/3–1/4+…+1/99–1/100。S1:1signS2:1sumS3:2denoS4:(-1)*signsignS5:sign*(1/deno)termS6:sum+termsumS7:deno+1denoS8:若deno100返回S4;否則算法結(jié)束。算法舉例2:求1-1/2+1/3–1/4+…+110算法舉例3:用偽代碼表示算法:用介于自然語言和計算機(jī)語言之間的文字和符號來描述算法
BEGIN1=>iwhile(i50){inputni和gi
i+1=>i}
1=>iwhile(i50){if(gi>=80)printni和gi
i+1=>i}END算法舉例3:用偽代碼表示算法:用介于自然語言和計算機(jī)語言11算法舉例4:
用計算機(jī)語言表示算法
求1-1/2+1/3–1/4+…+1/99–1/100。S1:
1sS2:1sumS3:2dS4:(-1)*ssS5:s*(1/d)tS6:sum+tsumS7:d+1dS8:若d100返回S4;否則算法結(jié)束。main(){ints=1;floatd=2.0,sum=1.0,t;while(d<=100){s=-s;t=s/d;sum=sum+t;d=d+1;}printf(“%f”,sum);}算法舉例4:用計算機(jī)語言表示算法求1-1/2+1/3123.4小結(jié)(1)算法是程序的靈魂,計算機(jī)程序設(shè)計的實質(zhì)是算法的設(shè)計。(2)C語言算法的特點是:① 有窮性
② 確定性
③ 有0個或多個輸入
④ 有一個或多個輸出
有效性
(3)算法的表示① 用自然語言表示
② 用流程圖表示算法,三種最基本的程序設(shè)計算法為:順序結(jié)構(gòu),選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。3.4小結(jié)(1)算法是程序的靈魂,計算機(jī)程序設(shè)計的實質(zhì)是算133.5C語句介紹一、C程序結(jié)構(gòu)C程序源程序文件1源程序文件2源程序文件n??????預(yù)處理命令全局變量聲明函數(shù)1函數(shù)n??????函數(shù)首部函數(shù)體局部變量聲明執(zhí)行語句3.5C語句介紹一、C程序結(jié)構(gòu)C程序源程序文件1源程序14二、C語句概述C語句分類:1.控制語句2.函數(shù)調(diào)用語句3.賦值語句4.空語句5.復(fù)合語句一條完整的C語句必須以“;”結(jié)束。“;”是一個語句不可缺少的一部分。二、C語句概述C語句分類:一條完整的C語句必須以151.控制語句:完成一定的控制功能。C有9種控制語句:⑴if()~else~(條件語句)⑵for()~(循環(huán)語句)⑶while()~(循環(huán)語句)⑷do~while()(循環(huán)語句)⑸continue(結(jié)束本次循環(huán)語句)⑹break(中止執(zhí)行switch或循環(huán)語句)⑺switch(多分支選擇語句)⑻goto(轉(zhuǎn)向語句)⑼return(從函數(shù)返回語句)1.控制語句:完成一定的控制功能。C有9種控制語句:162.函數(shù)調(diào)用語句
由一次函數(shù)調(diào)用加一個“;”構(gòu)成。如:printf(“HelloWorld!”);函數(shù)調(diào)用分號3.賦值語句由表達(dá)式加上“;”構(gòu)成。如:x+4*y;算術(shù)表達(dá)式語句4*7,4+8;逗號表達(dá)式語句x=4*7;賦值表達(dá)式語句(賦值語句)2.函數(shù)調(diào)用語句由一次函數(shù)調(diào)用加一個“;”構(gòu)成。174.空語句
由一個“;”構(gòu)成。即:;作用:①程序轉(zhuǎn)向點;②什么也不做的循環(huán)體。while(i<=11);5.復(fù)合語句
用{}括起的一組語句。如:if(x1>x2){y=x1*x1+x2;printf("y=%d",y);}不能省略不能加“;”4.空語句由一個“;”構(gòu)成。即:;18說明:(1)復(fù)合語句中的每一個語句還可以是復(fù)合語句;(2)復(fù)合語句盡管可由多個語句組合,但它只相當(dāng)于一個語句,在任何單一語句可以存在的地方,復(fù)合語句都可以存在。(3)在復(fù)合語句內(nèi),不僅可以有執(zhí)行語句,還可以有定義部分,定義部分應(yīng)該出現(xiàn)在可執(zhí)行語句的前面。說明:(1)復(fù)合語句中的每一個語句還可以193.6順序結(jié)構(gòu)程序設(shè)計(順序結(jié)構(gòu))(選擇結(jié)構(gòu))(循環(huán)結(jié)構(gòu))3.6順序結(jié)構(gòu)程序設(shè)計(順序結(jié)構(gòu))20特點:程序按語句從上到下的排列順序依此執(zhí)行,每條語句必須執(zhí)行且只能執(zhí)行一次,沒有執(zhí)行不到或執(zhí)行多次的語句。例如:已知圓柱體半徑6米,高7米,求體積。#definePI3.1415main(){floatr,h,s,v;r=6;h=7;s=PI*r*r;v=s*h;printf(“V=%f\n”,v);}特點:程序按語句從上到下的排列順序依此執(zhí)例如:已知圓柱體半徑21例3.1輸入三角形的三條邊,求三角形的面積。分析:已知∶三角形的三條邊a,b,c。求解∶三角形的面積area。計算公式∶設(shè)s=(a+b+c)/2area=開始給a,b,c賦值計算s=(a+b+c)/2計算area=結(jié)果輸出結(jié)束#include<math.h>main(){floata,b,c,s,area;scanf(“%f%f%f”,&a,&b,&c);s=(a+b+c)/2.0;area=sqrt(s*(s-a)*(s-b)*(s-c));printf(“a=%fb=%fc=%fs=%f”,a,b,c,s);printf(“area=%f”,area);}例3.1輸入三角形的三條邊,求三角形的面積。分析:已知22例3.2從鍵盤輸入一個大寫字母,要求改用小寫字母輸出。分析:已知∶字符變量c1為大寫字母。求解∶將字符變量c2中放入相應(yīng)的小寫字母。計算公式∶c2=c1+32(小寫改成大寫字母?)開始計算c2=c1+32輸出c1結(jié)束輸入一大寫字母放入c1中輸出c2#include<stdio.h>main(){charc1,c2;c1=getchar();/*鍵盤輸入一個大寫字母*/
printf(“%c,%d\n”,c1,c1);c2=c1+32;printf(“%c,%d\n”,c2,c2);}輸入:A
輸出:A,65
a,97
例3.2從鍵盤輸入一個大寫字母,要求改用小寫字母輸出。23例3.3求ax2+bx+c=0的根,a,b,c由鍵盤輸入,設(shè)b2-4ac>0#include<math.h>main(){floata,b,c,disc,x1,x2,p,q;scanf("%f%f%f",&a,&b,&c);disc=b*b-4*a*c;p=-b/(2*a);q=sqrt(disc)/(2*a);x1=p+q;x2=p-q;printf(”x1=%fx2=%f",x1,x2);}運行情況:a=1,b=3,c=2x1=-1.000000x2=-2.000000例3.3求ax2+bx+c=0的根,a,b,c由鍵盤輸入24例3.4輸入一個三位數(shù),依次輸出該數(shù)的符號和百號,十位,個位數(shù)字
。#include<stdi.h>#include<math.h>main(){charc1,c2,c3,c4;intx;scanf(“%d”,&x); /*輸入一個三位數(shù)*/c4=(x>=0?’+’:’-’); /*將x的符號存入c4中*/x=abs(x); /*求三位數(shù)的絕對值*/c3=x%10+48; /*獲得個位數(shù)字,加48后轉(zhuǎn)換為對應(yīng)的字符*/x=x/10; /*獲得x的前兩位*/c2=x%10+48; /*獲得十位數(shù)字,加48后轉(zhuǎn)換為對應(yīng)的字符*/c1=x/10+48; /*獲得百位數(shù)字,加48后轉(zhuǎn)換為對應(yīng)的字符*/printf(“%c%c%c%c”,c4,c1,c2,c3);}運行情況:-345-345例3.4輸入一個三位數(shù),依次輸出該數(shù)的符號和百號,十位,個253.7選擇結(jié)構(gòu)本節(jié)要點關(guān)系運算符與關(guān)系表達(dá)式邏輯運算符與邏輯表達(dá)式條件運算符與條件表達(dá)式if語句switch語句本章難點if語句的嵌套switch語句的使用3.7選擇結(jié)構(gòu)本節(jié)要點26C語言第二章算法課件273.7.1關(guān)系運算符和關(guān)系表達(dá)式
6種關(guān)系運算符:
①<(小于)②<=(小于或等于)③>(大于)④>=(大于或等于)⑤==(等于)⑥!=(不等于)3.7.1.1關(guān)系運算符結(jié)合性:自左向右3.7.1關(guān)系運算符和關(guān)系表達(dá)式6種關(guān)系運算符:3.28關(guān)系運算符的優(yōu)先次序
與其它運算符優(yōu)先級的比較:算術(shù)運算符關(guān)系運算符賦值運算符(高)(低)例如:c=d>a+b等效于:c=(d>(a+b))關(guān)系運算符的優(yōu)先次序與其它運算符優(yōu)先級的比較:算術(shù)運算符291.什么是關(guān)系表達(dá)式?3.7.1.2關(guān)系表達(dá)式如:(a>b)>(b<c)、‘a(chǎn)’<‘b’、x>y、s+f>d2.關(guān)系表達(dá)式的值運算結(jié)果∶邏輯值1——“真”,0——“假”如:設(shè)a=3,b=2,c=1求下面關(guān)系表達(dá)式的值:c>b(a-b)==1b+c<a值為0值為1值為0如果關(guān)系運算對象的類型不同,也要先進(jìn)行類型轉(zhuǎn)換。1.什么是關(guān)系表達(dá)式?3.7.1.2關(guān)系表達(dá)式如:(a>303.7.2邏輯運算符和邏輯表達(dá)式
3種邏輯運算符:
①?。ㄟ壿嫹牵?&(邏輯與)③||(邏輯或)3.7.2.1邏輯運算符優(yōu)先級(高)(低)如:!aa為真,則!a為假。a||ba、b之一為真,則a||b為真。a&&ba、b同時為真,則a&&b為真。3.7.2邏輯運算符和邏輯表達(dá)式3種邏輯運算符:3.7.31與其它運算符優(yōu)先級的比較:(高)(低)
!
算術(shù)運算符
關(guān)系運算符
&&和||
賦值運算符例如:c=d>a+b&&a>b等效于:c=((d>(a+b))&&(a>b))與其它運算符優(yōu)先級的比較:(高)(低)!321.什么是邏輯表達(dá)式?3.7.3邏輯表達(dá)式用邏輯運算符將邏輯運算對象連結(jié)起來的式子。如:(a>b)&&(b<c)、!a||a>b2.邏輯表達(dá)式的值運算結(jié)果∶邏輯值(只有假為0、真為1兩種取值)如:5>3&&2||8<4‘b’&&’d’值為1值為1運算對象∶以數(shù)值非0為真、0為假1.什么是邏輯表達(dá)式?3.7.3邏輯表達(dá)式用邏輯運算符將33注意事項:(1)代數(shù)式不等式0<x<5必須寫成(x>0)&&(x<5),而不能直接寫成0<x<5。(2)C語言允許直接對數(shù)或字符進(jìn)行邏輯運算。例如!5,結(jié)果為0。5&&‘c’,結(jié)果為1。因為字符‘c’的ASCII為非0值,非0值與非0值作與運算,結(jié)果為真。注意事項:343.7.4選擇結(jié)構(gòu)語句單分子選擇if(表達(dá)式)語句3.7.4.1if語句執(zhí)行過程:當(dāng)表達(dá)式的值為“真”(非零)時,執(zhí)行語句,否則,不執(zhí)行語句。如:if(x>y)z=x;3.7.4選擇結(jié)構(gòu)語句單分子選擇3.7.4.1if語句352.雙分子語句if(表達(dá)式)語句1else語句2執(zhí)行過程:當(dāng)表達(dá)式的值為“真”(非零)時,執(zhí)行語句1,否則,執(zhí)行語句2。如:
if(x>y)z=x;
elsez=y;2.雙分子語句執(zhí)行過程:如:if(x>y)z=363.多分子語句if(表達(dá)式1)語句1elseif(表達(dá)式2)語句2elseif(表達(dá)式3)語句3:elseif(表達(dá)式m)語句melse語句n如:if(grade>=85)level=‘A’;elseif(grade>=70)level=‘B’;elseif(grade>=60)level=‘C’;elselevel=‘D’;3.多分子語句如:if(grade>=85)le37
if語句說明:
⑴if后面的表達(dá)式一般為邏輯表達(dá)式或關(guān)系表達(dá)式,也可以是任意數(shù)值類型表達(dá)式。該語句是合法的:if(3)printf(“ok!”);⑵if語句中的“語句”為一個簡單語句或復(fù)合語句。
如:下面程序段是否有錯?if(x>=0)printf(“Xispositive.”);x++;elseprintf(“Xisnegative.”);if(x>=0){printf(“Xispositive.”);x++;}elseprintf(“Xisnegative.”);if語句說明:⑴if后面的表達(dá)式一般為邏輯表達(dá)式或關(guān)384.if語句的嵌套
在if語句中又包含一個或多個if語句稱為if語句的嵌套。一般形式:if(條件1)if(條件2)語句1else語句2elseif(條件3)語句3else語句4內(nèi)嵌if內(nèi)嵌if如:if(x>0)if(y>0)printf("x>0,y>0");elseprintf(“x>0,y<=0");elseif(y>0)printf(“x<=0,y>0");elseprintf(“x<=0,y<=0”);4.if語句的嵌套在if語句中又包39說明:else與if的匹配原則是:一個else應(yīng)與其之前距離最近且沒有與其它else配對的if配對。
if(n>6)if(n<12)printf(“6<n<12”);elseprintf(“n<=6”);if(n>6){if(n<12)printf(“6<n<12”);}elseprintf(“n<=6”);說明:else與if的匹配原則是:一個else應(yīng)與其之前距離40縮排
#inclde<stdio.h>main(){intx;scanf(“%d”,&x);if(x>0){printf(“Xispositive.”);x=x+1;}elseprintf(“Xisnegative.”);}縮進(jìn)縮進(jìn)縮進(jìn)縮排#inclde<stdio.h>縮進(jìn)41用if語句實現(xiàn)選擇結(jié)構(gòu)舉例
-1;x<0例:求y=0;x=0輸入x值,輸出y值。1;x>0main(){intx,y;scanf("%d",&x);if(x<0)y=-1;elseif(x==0)y=0;elsey=1;printf("x=%dy=%d",x,y);}用if語句實現(xiàn)選擇結(jié)構(gòu)舉例42例:托運行李計費。用f代表收費,w代表重量,并將它們定義成實型數(shù)。則有關(guān)系:
w*0.205 (0<=w<=50)f=w*0.313 (50<w<=200)(w-120)*0.413+10*0.23 (w>200)main(){
floatf,m; printf(“inputweight:”); scanf(“%f”,&w); if(w>100) f=(w-120)*0.413+10*0.23; elseif(w>50) f=w*0.313; else f=w*0.205; printf(“w=%f,f=%f\n’,w,f);}例:托運行李計費。用f代表收費,w代表重量,并將它們定義433.7.5條件運算符1.條件運算符與條件表達(dá)式條件表達(dá)式的一般形式:表達(dá)式1?表達(dá)式2∶表達(dá)式3如:max=(a>b)?a:b;
若a=3,b=2,則max=?如:(a>b)?a:b
目的∶簡化if語句。
if(a>b)max=a;elsemax=b;等效于:3.7.5條件運算符條件表達(dá)式的一般形式:表達(dá)式1?表44條件運算符的優(yōu)先級:
算數(shù)運算符=>關(guān)系運算符=>邏輯運算符(除!)賦值運算符<=條件運算符如:x=a+b>c&&c>d?a+b:d等效于:x=((((a+b)>c)&&(c>d))?(a+b):d)條件運算符的結(jié)合方向:自右至左
如:a>b?a:c>d?c:d等效于:a>b?a:(c>d?c:d)條件運算符的優(yōu)先級:算數(shù)運算符=>關(guān)系運算符=>邏輯452.條件表達(dá)式與if語句的比較
當(dāng)if語句中嵌套的語句是賦值語句,而且兩個分支都給同一個變量賦值時,條件表達(dá)式能替代if語句
。如下面的寫法是錯誤的:a>0?printf(“abs(a)=%d\n”,a):printf(“abs(a)=%d\n”,(-1)*a);
此語句的本意是:if(a>0)printf(“abs(a)=%d\n”,a);elseprintf(“abs(a)=%d\n”,(-1)*a);可以改寫為:printf(“abs(a)=%d\n”,a>0?a:(-1)*a);2.條件表達(dá)式與if語句的比較a>0?printf(46例:把輸入字符中的小寫字符轉(zhuǎn)換成大寫并輸出
。#include<stdio.h>main(){charch;scanf("%c",&ch);ch=(ch>='a'&&ch<='z')?ch-32:ch;printf(“%c”,ch);}輸入數(shù)據(jù):b輸出結(jié)果:B例:把輸入字符中的小寫字符轉(zhuǎn)換成大寫并輸出。#includ47main(){inta,b,c,t,max;scanf("%d%d%d",&a,&b,&c);t=(a>b)?a:b;max=(t>c)?t:c;printf("max=%d\n",max);}main()483.7.6switch語句一般形式:switch(表達(dá)式){case常量表達(dá)式1:語句序列1[]case常量表達(dá)式2:語句序列2[break;]:case常量表達(dá)式n:語句序列n[break;][default:語句序列n+1]}此處break用于退出switch語句break;3.7.6switch語句一般形式:switch(表達(dá)49先計算表達(dá)式的值,并逐個與其后的常量表達(dá)式值相比較;當(dāng)表達(dá)式的值與某個常量表達(dá)式的值相等時,即執(zhí)行其后的語句;然后不再進(jìn)行判斷,繼續(xù)執(zhí)行后面所有case后的語句;如表達(dá)式的值與所有case后的常量表達(dá)式均不相同時,則執(zhí)行default后的語句。switch語句的執(zhí)行過程:先計算表達(dá)式的值,并逐個與其后的常量表達(dá)式值相比較;sw50執(zhí)行過程:執(zhí)行過程:51例如:switch(grade){case‘A’:printf(“85~100”); case’B’:printf(“70~84”); case’C’:printf(“60~69”);case‘D’:printf(“<60”); default:printf(“error”);}若grade=‘A’,輸出結(jié)果是什么?85~10070~8460~69<60error
例如:switch(grade)若grade=‘A’,52用break語句處理后的程序段:switch(grade){case‘A’:printf(“85~100”);break; case’B’:printf(“70~84”);break; case’C’:printf(“60~69”);break;case‘D’:printf(“<60”);break; default:printf(“error”);}若grade=‘A’,輸出結(jié)果又是什么?85~100用break語句處理后的程序段:s53完整程序:main(){chargrade;printf(“Inputgrade(A,B,C,D):”);scanf(“%c”,&grade);switch(grade){
case‘A’:printf(“85~100”);break;case’B’:printf(“70~84”);break;case’C’:printf(“60~69”);break;case‘D’:printf(“<60”);break;default:printf(“error!”);break;}}完整程序:main()54流程圖為:
grade輸出“85-100”輸出“<60”輸出“60-69”輸出“error”輸出“70-84”流程圖為:grade輸出輸出輸出輸出輸出55使用switch語句時還應(yīng)注意以下幾點:1.在case后的各常量表達(dá)式的值不能相同,否則會出現(xiàn)錯誤。2.在case后,允許有多個語句,可以不用{}括起來。3.各case和default子句的先后順序可以變動,而不會影響程序執(zhí)行結(jié)果。4.default子句可以省略不用。5.若判斷的是一個區(qū)間,要將區(qū)間轉(zhuǎn)換成單個值。使用switch語句時還應(yīng)注意以下幾點:1.在case后的563.7.7標(biāo)號語句和goto標(biāo)號語句一般形式:語句標(biāo)號:語句例如:end:,該標(biāo)志符就成了語句標(biāo)號,但標(biāo)號不能用數(shù)值表示,例如:12:,3:,5:都是錯誤的。標(biāo)號可以與變量同名。
goto語句一般形式:goto語句標(biāo)號;
goto語句的作用是使程序改變原來的執(zhí)行順序,而跳到指定的語句上執(zhí)行。例如:gotosd;sd:printf(“thisisacat!\n”);3.7.7標(biāo)號語句和goto標(biāo)號語句一般形式:語句標(biāo)號:語57說明:⑴C語言允許在任何語句前加一個語句標(biāo)號,作為goto語句的目標(biāo)。給語句加標(biāo)號的形式:
語句標(biāo)號:語句⑵goto語句是一種非結(jié)構(gòu)化語句,結(jié)構(gòu)化程序設(shè)計方法不提倡使用goto語句,因為濫用goto語句將使程序流程無規(guī)律,可讀性差。但也不是絕對禁止使用,只有在能夠大大提高程序效率時才使用。且記:不要從循環(huán)體外跳到循環(huán)體內(nèi)!說明:⑴C語言允許在任何語句前加一個語句標(biāo)號,作為goto58#include<stdio.h>main(){inti,sum=0;i=1;loop:if(i<=100){sum=sum+i; i++; gotoloop;}printf("%d",sum);}sum=0+1sum==1+2=3sum=3+3=6sum=6+4……sum=4950+100=5050循環(huán)初值循環(huán)終值循環(huán)變量增值循環(huán)條件循環(huán)體一、例用if語句和goto語句構(gòu)成循環(huán)求
1+2+3+……+100。#include<stdio.h>sum=0+1循環(huán)初值循59二、用goto語句和if語句構(gòu)成循環(huán)計算10!并輸出結(jié)果。
main(){inti=1,sum=1;loop:if(i<=10){sum=sum*i;i++;gotoloop;}printf(“10!=%d\n”,sum);}運行結(jié)果:10!=24320本應(yīng)是:10!=3628800
main(){inti=1;longsum=1;loop:if(i<=10){sum=sum*i;i++;gotoloop;}printf(“10!=%ld\n”,sum);}二、用goto語句和if語句構(gòu)成循環(huán)計算10!并輸出結(jié)果603.7.8選擇結(jié)構(gòu)程序設(shè)計舉例
例1寫程序,判斷某一年是否閏年。設(shè):leap代表閏年信息,leap=1閏年,leap=0非閏年不能被4整除非閏年被4整除,但不能被100整除閏年被100整除,又能被400整除閏年其他,非閏年非閏年3.7.8選擇結(jié)構(gòu)程序設(shè)計舉例
例1寫程序,判斷某61main(){intyear,leap=0;scanf(“%d”,&year);/*輸入年份值*/if((year%4==0&&year%100!=0)||(year%400==0))leap=1;elseleap=0;if(leap==1)printf(“%disleap”,year);elseprintf(“%disnotleap”,year);
}main()62main(){intyear,leap=0;scanf(“%d”,&year);/*輸入年份值*/if(year%4!=0)leap=0;elseif(year%100!=0) leap=1; elseif(year%400!=0) leap=0; elseleap=1;if(leap==1)printf(“%disleap”,year);elseprintf(“%disnotleap”,year);
}main()63例已知基本運費、貨重,以及路程(s)和折扣的關(guān)系標(biāo)準(zhǔn)如下:
s<250km沒有折扣250≤s<500%2折扣500≤s<10005%折扣1000≤s<20008%折扣2000≤s<300010%折扣3000≤s15%折扣算法:先按距離的250倍數(shù)進(jìn)行分類,求每類的折扣,再按公式計算。編程序,計算運費。設(shè)基本運費p、貨物重量w、距離s和折扣d。則總運費的計算公式為:f=p*w*s*(1-d)例已知基本運費、貨重,以及路程(s)和折扣的關(guān)系標(biāo)準(zhǔn)如下64250500100020003000s0161412108642折扣的變化點都是250的倍數(shù).c=s/250代表250的倍數(shù)。124812c總運費的計算公式為:f=p*w*s*(1-d)250500100065程序為:main(){intc,s;floatp,w,d,f;scanf(“%f,%f,%d”,&p,&w,&s);if(s>=3000)c=12;elsec=s/250;/*按250分類*/switch(c){case0:d=0;break;/*s<250*/case1:d=2;break;/*250≤s<500*/case2:/*500≤s<750*/case3:d=5;break;/*750≤s<1000*/case4:/*1000≤s<1250*/case5:/*1250≤s<1500*/程序為:66
case6:/*1500≤s<1750*/
case7:d=8;break;/*1750≤s<2000*/
case8:/*2000≤s<2250*/
case9:/*2250≤s<2500*/
case10:/*2500≤s<2750*/
case11:d=10;break;/*2750≤s<3000*/
case12:d=15;break;/*3000≤s*/
}f=p*w*s*(1-d/100.0);printf(“freight=%15.4f”,f);}運行情況:輸入:100,20,300↙
結(jié)果:freight=588000.0000case6:67若用if語句實現(xiàn)上述功能,程序為:main(){ints;floatp,w,d,f;scanf(“%f,%f,%d”,&p,&w,&s);if(s>=3000)d=15;elseif(s>=2000&&s<3000)d=10;elseif(s>=1000&&s<2000)d=8;elseif(s>=500&&s<1000)d=5;elseif(s>=250&&s<500)d=2;elsed=0;f=p*w*s*(1-d/100.0);printf(“freight=%15.4f”,f);}若用if語句實現(xiàn)上述功能,程序為:68習(xí)題給一個不多于5位的正整數(shù),要求:①求出它是幾位數(shù);②分別打印出每一位數(shù)字;③按逆序打印出各位數(shù)字,例如原數(shù)為321,應(yīng)輸出123。#include<stdio.h>main(){longintnum;intn1,n2,n3,n4,n5,bits;scanf(“%ld”,&num);if(num>9999)bits=5elseif(num>999)bits=4;elseif(num>99)bits=3;elseif(num>9)bits=2;elsebits=1;printf(“bits=%d\n”,bits);習(xí)題給一個不多于5位的正整數(shù),要求:①求出它是幾位數(shù);②69n5=num/10000;n4=(int)(num-n5*10000)/1000;n3=(int)(num-n5*10000-n4*1000)/100;n2=(int)(num-n5*10000-n4*1000-n3*100)/10;n1=(int)(num-n5*10000-n4*1000-n3*100-n2*10);switch(bits){case5:printf(“Everybitis:%d,%d,%d,%d,%d\n”,n5,n4,n3,n2,n1);printf(“Reverseis:%d,%d,%d,%d,%d\n”,n1,n2,n3,n4,n5);break;case4:printf(“Everybitis:%d,%d,%d,%d\n”,n4,n3,n2,n1);printf(“Reverseis:%d,%d,%d,%d\n”,n1,n2,n3,n4);break;n5=num/10000;switch(bi70case3:printf(“Everybitis:%d,%d,%d\n”,n3,n2,n1);printf(“Reverseis:%d,%d,%d\n”,n1,n2,n3);break;case2:printf(“Everybitis:%d,%d\n”,n2,n1);printf(“Reverseis:%d,%d\n”,n1,n2);break;case1:printf(“Bitis:%d\n”,n1);printf(“Reverseis:%d\n”,n1);}}運行情況:12345↙Inputbits=5Everybitis:1,2,3,4,5Reverseis:5,4,3,2,1Outputcase3:printf(“Everybit713.7作業(yè)題目:輸入某年某月某日,判斷這一天是這一年的第幾天?
1.程序分析:以3月5日為例,應(yīng)該先把前兩個月的加起來,然后再加上5天即本年的第幾天,特殊情況,閏年且輸入月份大于3時需考慮多加一天。
3.7作業(yè)題目:輸入某年某月某日,判斷這一天是這一年的第72經(jīng)常不斷地學(xué)習(xí),你就什么都知道。你知道得越多,你就越有力量StudyConstantly,AndYouWillKnowEverything.TheMoreYouKnow,TheMorePowerfulYouWillBe寫在最后經(jīng)常不斷地學(xué)習(xí),你就什么都知道。你知道得越多,你就越有力量寫73謝謝大家榮幸這一路,與你同行It'SAnHonorToWalkWithYouAllTheWay演講人:XXXXXX時間:XX年XX月XX日
謝謝大家演講人:XXXXXX74第3章基本算法本章要點:算法的特征算法的表示方法程序設(shè)計的基本算法掌握程序的基本結(jié)構(gòu)第3章基本算法本章要點:753.1程序與算法程序包括:(1)對數(shù)據(jù)的描述數(shù)據(jù)結(jié)構(gòu)(2)對數(shù)據(jù)處理的描述算法算法(algorithm)是對特定問題求解步驟的一種描述。可將程序總結(jié)為:程序=算法+數(shù)據(jù)結(jié)構(gòu)+程序設(shè)計方法+語言工具和環(huán)境3.1程序與算法程序包括:76C語言算法的主要特點如下:1.有窮性一個算法應(yīng)該包含有限的操作步驟,而不能是無限的。
2.確定性算法中的每一個步驟應(yīng)當(dāng)是確定的,而不應(yīng)當(dāng)是含糊的(多義性),應(yīng)是十分明確無誤的。
3.有0個或多個輸入。4.有一個或多個輸出。5.有效性算法中的每一個步驟都應(yīng)當(dāng)有效的執(zhí)行,并得到確定的結(jié)果。3.2算法的特征C語言算法的主要特點如下:3.2算法的特征77
3.3算法的表示方法(1)自然語言描述法(2)傳統(tǒng)的流程圖表示
常用符號有:(3)N-S流程圖表示(4)偽代碼表示算法(5)計算機(jī)語言表示算法起止框輸入/輸出框判斷框處理框流程線連接點3.3算法的表示方法(1)自然語言描述法起止框輸78一、順序結(jié)構(gòu)
BA(a)AB(b)先執(zhí)行A操作,再執(zhí)行B操作,兩者是順序執(zhí)行關(guān)系。N-S結(jié)構(gòu)流程圖結(jié)構(gòu)化程序設(shè)計的三種基本機(jī)構(gòu)一、順序結(jié)構(gòu)79二、選擇結(jié)構(gòu)當(dāng)P條件為真時,執(zhí)行A模塊,否則執(zhí)行B模塊。APB真假(a)P真假AB(b)二、選擇結(jié)構(gòu)當(dāng)P條件為真時,執(zhí)行A模塊,否則執(zhí)行B模塊。AP80三、循環(huán)結(jié)構(gòu)當(dāng)P條件成立時,反復(fù)執(zhí)行A,直到P為假。1.當(dāng)型循環(huán)結(jié)構(gòu)PA假真(a)當(dāng)P為真A(b)當(dāng)P為真三、循環(huán)結(jié)構(gòu)當(dāng)P條件成立時,反復(fù)執(zhí)行A,直到P為假。1.當(dāng)型812.直到型循環(huán)結(jié)構(gòu)先執(zhí)行A操作,再判斷P是否為假,若P為假,再執(zhí)行A,直到P為真為止。AP假真
(a)A直到P為真
(b)2.直到型循環(huán)結(jié)構(gòu)先執(zhí)行A操作,再判斷P是否為假,若P為假,82算法舉例1:對一個大于2的正整數(shù),判斷它是不是一個素數(shù)。方法:將n(其中n>2)作為被除數(shù),將2到(n-1)各個整數(shù)輪流作為除數(shù),如果都不能被整除,則n為素數(shù)。算法表示如下:S1:輸入n的值S2:2i(i作為除數(shù))
S3:n被i除,得余數(shù)rS4:如果r等于0,表示n能被i整除,則打印n“不是素數(shù)”,算法結(jié)束;否則執(zhí)行S5S5:i+1iS6:如果in-1,返回S3;否則,打印n“是素數(shù)”,算法結(jié)束。算法舉例1:對一個大于2的正整數(shù),判斷它是不是一個素數(shù)。83算法舉例2:求1-1/2+1/3–1/4+…+1/99–1/100。S1:1signS2:1sumS3:2denoS4:(-1)*signsignS5:sign*(1/deno)termS6:sum+termsumS7:deno+1denoS8:若deno100返回S4;否則算法結(jié)束。算法舉例2:求1-1/2+1/3–1/4+…+184算法舉例3:用偽代碼表示算法:用介于自然語言和計算機(jī)語言之間的文字和符號來描述算法
BEGIN1=>iwhile(i50){inputni和gi
i+1=>i}
1=>iwhile(i50){if(gi>=80)printni和gi
i+1=>i}END算法舉例3:用偽代碼表示算法:用介于自然語言和計算機(jī)語言85算法舉例4:
用計算機(jī)語言表示算法
求1-1/2+1/3–1/4+…+1/99–1/100。S1:
1sS2:1sumS3:2dS4:(-1)*ssS5:s*(1/d)tS6:sum+tsumS7:d+1dS8:若d100返回S4;否則算法結(jié)束。main(){ints=1;floatd=2.0,sum=1.0,t;while(d<=100){s=-s;t=s/d;sum=sum+t;d=d+1;}printf(“%f”,sum);}算法舉例4:用計算機(jī)語言表示算法求1-1/2+1/3863.4小結(jié)(1)算法是程序的靈魂,計算機(jī)程序設(shè)計的實質(zhì)是算法的設(shè)計。(2)C語言算法的特點是:① 有窮性
② 確定性
③ 有0個或多個輸入
④ 有一個或多個輸出
有效性
(3)算法的表示① 用自然語言表示
② 用流程圖表示算法,三種最基本的程序設(shè)計算法為:順序結(jié)構(gòu),選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。3.4小結(jié)(1)算法是程序的靈魂,計算機(jī)程序設(shè)計的實質(zhì)是算873.5C語句介紹一、C程序結(jié)構(gòu)C程序源程序文件1源程序文件2源程序文件n??????預(yù)處理命令全局變量聲明函數(shù)1函數(shù)n??????函數(shù)首部函數(shù)體局部變量聲明執(zhí)行語句3.5C語句介紹一、C程序結(jié)構(gòu)C程序源程序文件1源程序88二、C語句概述C語句分類:1.控制語句2.函數(shù)調(diào)用語句3.賦值語句4.空語句5.復(fù)合語句一條完整的C語句必須以“;”結(jié)束?!?”是一個語句不可缺少的一部分。二、C語句概述C語句分類:一條完整的C語句必須以891.控制語句:完成一定的控制功能。C有9種控制語句:⑴if()~else~(條件語句)⑵for()~(循環(huán)語句)⑶while()~(循環(huán)語句)⑷do~while()(循環(huán)語句)⑸continue(結(jié)束本次循環(huán)語句)⑹break(中止執(zhí)行switch或循環(huán)語句)⑺switch(多分支選擇語句)⑻goto(轉(zhuǎn)向語句)⑼return(從函數(shù)返回語句)1.控制語句:完成一定的控制功能。C有9種控制語句:902.函數(shù)調(diào)用語句
由一次函數(shù)調(diào)用加一個“;”構(gòu)成。如:printf(“HelloWorld!”);函數(shù)調(diào)用分號3.賦值語句由表達(dá)式加上“;”構(gòu)成。如:x+4*y;算術(shù)表達(dá)式語句4*7,4+8;逗號表達(dá)式語句x=4*7;賦值表達(dá)式語句(賦值語句)2.函數(shù)調(diào)用語句由一次函數(shù)調(diào)用加一個“;”構(gòu)成。914.空語句
由一個“;”構(gòu)成。即:;作用:①程序轉(zhuǎn)向點;②什么也不做的循環(huán)體。while(i<=11);5.復(fù)合語句
用{}括起的一組語句。如:if(x1>x2){y=x1*x1+x2;printf("y=%d",y);}不能省略不能加“;”4.空語句由一個“;”構(gòu)成。即:;92說明:(1)復(fù)合語句中的每一個語句還可以是復(fù)合語句;(2)復(fù)合語句盡管可由多個語句組合,但它只相當(dāng)于一個語句,在任何單一語句可以存在的地方,復(fù)合語句都可以存在。(3)在復(fù)合語句內(nèi),不僅可以有執(zhí)行語句,還可以有定義部分,定義部分應(yīng)該出現(xiàn)在可執(zhí)行語句的前面。說明:(1)復(fù)合語句中的每一個語句還可以933.6順序結(jié)構(gòu)程序設(shè)計(順序結(jié)構(gòu))(選擇結(jié)構(gòu))(循環(huán)結(jié)構(gòu))3.6順序結(jié)構(gòu)程序設(shè)計(順序結(jié)構(gòu))94特點:程序按語句從上到下的排列順序依此執(zhí)行,每條語句必須執(zhí)行且只能執(zhí)行一次,沒有執(zhí)行不到或執(zhí)行多次的語句。例如:已知圓柱體半徑6米,高7米,求體積。#definePI3.1415main(){floatr,h,s,v;r=6;h=7;s=PI*r*r;v=s*h;printf(“V=%f\n”,v);}特點:程序按語句從上到下的排列順序依此執(zhí)例如:已知圓柱體半徑95例3.1輸入三角形的三條邊,求三角形的面積。分析:已知∶三角形的三條邊a,b,c。求解∶三角形的面積area。計算公式∶設(shè)s=(a+b+c)/2area=開始給a,b,c賦值計算s=(a+b+c)/2計算area=結(jié)果輸出結(jié)束#include<math.h>main(){floata,b,c,s,area;scanf(“%f%f%f”,&a,&b,&c);s=(a+b+c)/2.0;area=sqrt(s*(s-a)*(s-b)*(s-c));printf(“a=%fb=%fc=%fs=%f”,a,b,c,s);printf(“area=%f”,area);}例3.1輸入三角形的三條邊,求三角形的面積。分析:已知96例3.2從鍵盤輸入一個大寫字母,要求改用小寫字母輸出。分析:已知∶字符變量c1為大寫字母。求解∶將字符變量c2中放入相應(yīng)的小寫字母。計算公式∶c2=c1+32(小寫改成大寫字母?)開始計算c2=c1+32輸出c1結(jié)束輸入一大寫字母放入c1中輸出c2#include<stdio.h>main(){charc1,c2;c1=getchar();/*鍵盤輸入一個大寫字母*/
printf(“%c,%d\n”,c1,c1);c2=c1+32;printf(“%c,%d\n”,c2,c2);}輸入:A
輸出:A,65
a,97
例3.2從鍵盤輸入一個大寫字母,要求改用小寫字母輸出。97例3.3求ax2+bx+c=0的根,a,b,c由鍵盤輸入,設(shè)b2-4ac>0#include<math.h>main(){floata,b,c,disc,x1,x2,p,q;scanf("%f%f%f",&a,&b,&c);disc=b*b-4*a*c;p=-b/(2*a);q=sqrt(disc)/(2*a);x1=p+q;x2=p-q;printf(”x1=%fx2=%f",x1,x2);}運行情況:a=1,b=3,c=2x1=-1.000000x2=-2.000000例3.3求ax2+bx+c=0的根,a,b,c由鍵盤輸入98例3.4輸入一個三位數(shù),依次輸出該數(shù)的符號和百號,十位,個位數(shù)字
。#include<stdi.h>#include<math.h>main(){charc1,c2,c3,c4;intx;scanf(“%d”,&x); /*輸入一個三位數(shù)*/c4=(x>=0?’+’:’-’); /*將x的符號存入c4中*/x=abs(x); /*求三位數(shù)的絕對值*/c3=x%10+48; /*獲得個位數(shù)字,加48后轉(zhuǎn)換為對應(yīng)的字符*/x=x/10; /*獲得x的前兩位*/c2=x%10+48; /*獲得十位數(shù)字,加48后轉(zhuǎn)換為對應(yīng)的字符*/c1=x/10+48; /*獲得百位數(shù)字,加48后轉(zhuǎn)換為對應(yīng)的字符*/printf(“%c%c%c%c”,c4,c1,c2,c3);}運行情況:-345-345例3.4輸入一個三位數(shù),依次輸出該數(shù)的符號和百號,十位,個993.7選擇結(jié)構(gòu)本節(jié)要點關(guān)系運算符與關(guān)系表達(dá)式邏輯運算符與邏輯表達(dá)式條件運算符與條件表達(dá)式if語句switch語句本章難點if語句的嵌套switch語句的使用3.7選擇結(jié)構(gòu)本節(jié)要點100C語言第二章算法課件1013.7.1關(guān)系運算符和關(guān)系表達(dá)式
6種關(guān)系運算符:
①<(小于)②<=(小于或等于)③>(大于)④>=(大于或等于)⑤==(等于)⑥?。剑ú坏扔冢?.7.1.1關(guān)系運算符結(jié)合性:自左向右3.7.1關(guān)系運算符和關(guān)系表達(dá)式6種關(guān)系運算符:3.102關(guān)系運算符的優(yōu)先次序
與其它運算符優(yōu)先級的比較:算術(shù)運算符關(guān)系運算符賦值運算符(高)(低)例如:c=d>a+b等效于:c=(d>(a+b))關(guān)系運算符的優(yōu)先次序與其它運算符優(yōu)先級的比較:算術(shù)運算符1031.什么是關(guān)系表達(dá)式?3.7.1.2關(guān)系表達(dá)式如:(a>b)>(b<c)、‘a(chǎn)’<‘b’、x>y、s+f>d2.關(guān)系表達(dá)式的值運算結(jié)果∶邏輯值1——“真”,0——“假”如:設(shè)a=3,b=2,c=1求下面關(guān)系表達(dá)式的值:c>b(a-b)==1b+c<a值為0值為1值為0如果關(guān)系運算對象的類型不同,也要先進(jìn)行類型轉(zhuǎn)換。1.什么是關(guān)系表達(dá)式?3.7.1.2關(guān)系表達(dá)式如:(a>1043.7.2邏輯運算符和邏輯表達(dá)式
3種邏輯運算符:
①!(邏輯非)②&&(邏輯與)③||(邏輯或)3.7.2.1邏輯運算符優(yōu)先級(高)(低)如:!aa為真,則!a為假。a||ba、b之一為真,則a||b為真。a&&ba、b同時為真,則a&&b為真。3.7.2邏輯運算符和邏輯表達(dá)式3種邏輯運算符:3.7.105與其它運算符優(yōu)先級的比較:(高)(低)
!
算術(shù)運算符
關(guān)系運算符
&&和||
賦值運算符例如:c=d>a+b&&a>b等效于:c=((d>(a+b))&&(a>b))與其它運算符優(yōu)先級的比較:(高)(低)!1061.什么是邏輯表達(dá)式?3.7.3邏輯表達(dá)式用邏輯運算符將邏輯運算對象連結(jié)起來的式子。如:(a>b)&&(b<c)、!a||a>b2.邏輯表達(dá)式的值運算結(jié)果∶邏輯值(只有假為0、真為1兩種取值)如:5>3&&2||8<4‘b’&&’d’值為1值為1運算對象∶以數(shù)值非0為真、0為假1.什么是邏輯表達(dá)式?3.7.3邏輯表達(dá)式用邏輯運算符將107注意事項:(1)代數(shù)式不等式0<x<5必須寫成(x>0)&&(x<5),而不能直接寫成0<x<5。(2)C語言允許直接對數(shù)或字符進(jìn)行邏輯運算。例如!5,結(jié)果為0。5&&‘c’,結(jié)果為1。因為字符‘c’的ASCII為非0值,非0值與非0值作與運算,結(jié)果為真。注意事項:1083.7.4選擇結(jié)構(gòu)語句單分子選擇if(表達(dá)式)語句3.7.4.1if語句執(zhí)行過程:當(dāng)表達(dá)式的值為“真”(非零)時,執(zhí)行語句,否則,不執(zhí)行語句。如:if(x>y)z=x;3.7.4選擇結(jié)構(gòu)語句單分子選擇3.7.4
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025山東菏澤曹縣蘇教高級中學(xué)教師招聘6人備考考試試題及答案解析
- 2026福建三明市建寧縣公開招聘緊缺急需專業(yè)教師19人參考筆試題庫附答案解析
- 2025新疆第十四師昆玉市學(xué)校引進(jìn)高層次人才18人考試參考試題及答案解析
- 2026華能云南滇東能源有限責(zé)任公司招聘60人參考筆試題庫附答案解析
- 深度解析(2026)《GBT 25866-2010玉米干全酒糟(玉米DDGS)》(2026年)深度解析
- 2025河南輕工職業(yè)學(xué)院2025年公開招聘工作人員(博士)5人模擬筆試試題及答案解析
- 深度解析(2026)《GBT 25811-2010染料試驗用標(biāo)準(zhǔn)漂白滌綸布》
- 2026福建龍巖人民醫(yī)院招聘醫(yī)學(xué)類緊缺急需專業(yè)畢業(yè)生4人備考考試試題及答案解析
- 高校畢業(yè)生專業(yè)結(jié)構(gòu)與產(chǎn)業(yè)需求錯配-基于OECD《技能戰(zhàn)略》供需匹配指數(shù)
- 2025重慶市長壽區(qū)城市管理服務(wù)中心招聘數(shù)字城管工作人員3人參考筆試題庫附答案解析
- GB/T 33248-2016印刷技術(shù)膠印橡皮布
- GB/T 18487.1-2015電動汽車傳導(dǎo)充電系統(tǒng)第1部分:通用要求
- 外觀不良改善報告
- 《涉江采芙蓉》課件33張
- 測井作業(yè)工程事故應(yīng)急預(yù)案
- “裝配式建筑”施工案例詳解圖文并茂
- 醫(yī)療耗材配送服務(wù)方案
- 高三期末考試心態(tài)調(diào)整和考試技巧指導(dǎo)課件
- 基礎(chǔ)部分6se70變頻柜-整流單元
- GB∕T 37092-2018 信息安全技術(shù)密碼模塊安全要求
評論
0/150
提交評論