




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、數(shù)值分析課程設(shè)計(jì)三次樣條插值算法院(系)名稱信息工程學(xué)院 專 業(yè) 班 級09普本信計(jì)1班學(xué)號 090111073學(xué) 生 姓 名宣章然指 導(dǎo) 教 師孔繁民2012年06月08日數(shù)值分析課程設(shè)計(jì)評閱書題目三次樣條插值學(xué)生姓名宣章然學(xué)號090111073指導(dǎo)教師評語及成績指導(dǎo)教師簽名:年 月 日答辯評語及成績答辯教師簽名:年 月 日教研室意見總成績: 教研室主任簽名:年月日課程設(shè)計(jì)任務(wù)書20082009學(xué)年第二學(xué)期專業(yè)班級: 09普本信計(jì)1班 學(xué)號: 060111060 姓名: 宣章然課程設(shè)計(jì)名稱:數(shù)值分析設(shè)計(jì)題目:三次樣條插值完成期限:自2012年6月8日至2012年6月13日共1周設(shè)計(jì)依據(jù)、要求
2、及主要內(nèi)容:一、設(shè)計(jì)目的 熟練掌握三次樣條插值算法的原理和推導(dǎo)過程,并且能夠應(yīng)用Matlab軟件編寫相應(yīng)的程序和使用Matlab軟件函數(shù)庫軟件。二、設(shè)計(jì)要求 (1)用Matlab函數(shù)庫中相應(yīng)函數(shù)對選定的問題,求出具有一定精度的結(jié)果。(2)使用所用的方法編寫Matlab程序求解,對數(shù)值結(jié)果進(jìn)行分析。(3)對于使用多個方法解同一問題的,在界面上設(shè)計(jì)成菜單形式。三、設(shè)計(jì)內(nèi)容 首先構(gòu)造三次樣條插值函數(shù)的定義和一般特征,并對實(shí)例問題進(jìn)行實(shí)例分析,并總結(jié) 四、參考文獻(xiàn) 1 黃明游,馮果忱.數(shù)值分析M.北京:高等教育出版社,2008.2馬東升,雷勇軍.數(shù)值計(jì)算方法M.北京:機(jī)械工業(yè)出版社,2006.3 石博
3、強(qiáng),趙金.MATLAB數(shù)學(xué)計(jì)算與工程分析范例教程M.北京:中國鐵道出版社.2005.4郝紅偉,MATLAB 6,北京,中國電力出版社,20015姜健飛,胡良劍,數(shù)值分析及其MATLAB實(shí)驗(yàn), 科學(xué)出版社,20046薛毅,數(shù)值分析實(shí)驗(yàn),北京工業(yè)大學(xué)出版社,2005計(jì)劃答辯時間:2012年6月18日指導(dǎo)教師(簽字): 教研室主任(簽字):批準(zhǔn)日期: 年 月三次樣條插值摘要分段低次樣條插值雖然計(jì)算簡單、穩(wěn)定性好、收斂性有保證且易在電子計(jì)算機(jī)上實(shí)現(xiàn),但只能保證各小段曲線在連接處的連續(xù)性,不能保證整件曲線的光滑性。利用樣條插值,既可保持分段低次插值多項(xiàng)式,又可提高插值函數(shù)光滑性。故給出分段三次樣條插值的
4、構(gòu)造過程、算法步驟,利用MATLAB軟件編寫三次樣條插值函數(shù)通用程序,并通過數(shù)值算例證明程序的正確性。關(guān)鍵字:三次樣條 插值函數(shù) MATLAB編程 收斂性 算法步驟一 三次樣條函數(shù)定義及特征定義1:若函數(shù),且在每個小區(qū)間上上是三次多項(xiàng)式,其中 是給定節(jié)點(diǎn),則稱是節(jié)點(diǎn)上的三次樣條函數(shù)。若節(jié)點(diǎn)上 給定函數(shù)值 ,且 (1.1)成立,則稱 為三次樣條差值函數(shù)。從定義知,要求出,在每個應(yīng)小區(qū)間 上確定4個待定系數(shù),共有 n個小區(qū)間,故應(yīng)確定4n 個參數(shù),根據(jù) 在 上二階導(dǎo)數(shù)連續(xù),在節(jié)點(diǎn)處應(yīng)滿足連續(xù)性條件 (1.2)共有 3n-3個條件,再加上滿足插值條件(1.1),共有4n-2個條件,因此還需要2個條件
5、才能確定。通??稍趨^(qū)間 端點(diǎn)上各加一個條件(稱邊界條件),邊界條件可根據(jù)實(shí)際的問題要求給定。常見的三種:(1) 已知兩端的一節(jié)導(dǎo)數(shù)值,即 (1.3)(2)兩端的二階導(dǎo)數(shù)已知,即 (1.4)特殊情況下的邊界條件 (1.4)稱為自然邊界條件(3)當(dāng)是以 為周期函數(shù)時,則要求 也是周期函數(shù),這時邊界條件應(yīng)滿足而此時式中 , 這樣確定的樣條函數(shù) 稱為周期函數(shù)。二 函數(shù)推導(dǎo)原理及構(gòu)造我們采用待定一階導(dǎo)數(shù)的方法即設(shè)S(Xj)=Mj,j=0,1,.,n,因?yàn)榉侄稳蜨ermite插值多項(xiàng)式已經(jīng)至少是一階連續(xù)可導(dǎo)了,為了讓它成為三次樣條函數(shù)只需確定節(jié)點(diǎn)處的一階導(dǎo)數(shù)使這些節(jié)點(diǎn)處的二階導(dǎo)數(shù)連續(xù)即可!由于在內(nèi)部節(jié)點(diǎn)
6、處二階導(dǎo)數(shù)連續(xù)條件:整理化簡后得:第一類三次樣條插值問題方程組由于已知:基本方程組化為n-1階方程組化為矩陣形式這是一個嚴(yán)格對角占優(yōu)的三對角方程組,用追趕法可以求解!第二類三次樣條插值問題的方程組,由于已知:故得:稍加整理得聯(lián)合基本方程組得一個n+1階三對角方程組,化成矩陣形式為:仍然是嚴(yán)格對角占優(yōu)第三類樣條插值問題的方程組,由于:立即可得下式:其中:聯(lián)合基本方程得一個廣義三對角或周期三對角方程組:求解這些不同類型的樣條插值問題的方程組,我們可得所要待定的一階導(dǎo)數(shù):再代入S(x)的每一段表達(dá)式,就求得三次樣條函數(shù)的表達(dá)式!利用插值(即求過已知有限個數(shù)據(jù)點(diǎn)的近似函數(shù))的基本原理,用多項(xiàng)式作為研究
7、插值的工具,進(jìn)行代數(shù)插值。其基本問題是:已知函數(shù)f (x)在區(qū)間a,b上n +1個不同點(diǎn)x0,xn處的函數(shù)值 (i = 0,1,n),求一個至多n 次多項(xiàng)式n(x)使其在給定點(diǎn)處與 f (x)同值,即滿足插值條件: n(x)= = .許多工程技術(shù)中提出的計(jì)算問題對插值函數(shù)的光滑性有較高要求,如飛機(jī)的機(jī)翼外形,內(nèi)燃機(jī)的進(jìn)、排氣門的凸輪曲線,都要求曲線具有較高的光滑程度,不僅要連續(xù),而且要有連續(xù)的曲率,這就導(dǎo)致了樣條插值的產(chǎn)生。數(shù)學(xué)上將具有一定光滑性的分段多項(xiàng)式稱為樣條函數(shù)。具體地說,給定區(qū)間a,b的一個分劃如果函數(shù)s(x) 滿足:(i)在每個小區(qū)間 (i=0,1,n)上s(x)是k 次多項(xiàng)式;(
8、ii)s(x)在a,b上具有k 1階連續(xù)導(dǎo)數(shù)。則稱s(x)為關(guān)于分劃 的k 次樣條函數(shù),其圖形稱為k 次樣條曲線。由于三次樣條插值我、函數(shù)s(x)的插值節(jié)點(diǎn)處的二階導(dǎo)數(shù)存在,因此令各節(jié)點(diǎn)處的二階導(dǎo)數(shù)為 (1.01) 根據(jù)樣條插值函數(shù)的定義,三次樣條插值函數(shù)是s(x)在每一個小區(qū)間 上市不超過三次的多項(xiàng)式。在每一個小區(qū)間上,其二階導(dǎo)數(shù)為線性函數(shù),即 (1.02)對式(1.02)積分兩次,則得到 (1.03)其中為任意常數(shù)。又根據(jù)樣條插值函數(shù)定義中的條件(3),即可以確定與為= (1.04) 將式(1.04)中與的值代入表達(dá)式(1.03后,就可以得到樣條插值函數(shù)在區(qū)間上的表達(dá)式為 (1.05)其中
9、與分別為區(qū)間兩端點(diǎn)處的二階導(dǎo)數(shù)值。由此可以看處,只要能確定各點(diǎn)處的二階導(dǎo)數(shù)值,則子渠道間上的三次樣條插值函數(shù)也確定了。在區(qū)間a,b上的一階導(dǎo)數(shù)連續(xù),在各節(jié)點(diǎn)的左右兩子區(qū)間上的s(x)雖然不同,但在連接點(diǎn)處的導(dǎo)數(shù)存在,即在連接點(diǎn)處的左右導(dǎo)數(shù)相等,有 (1.06)為了利用條件(2.18),在x屬于時,縣求為 (1.07)當(dāng)x屬于時, (1.08)整理得: (1.09)其中三 問題的提出上面討論的分段低次插值函數(shù)都有一致收斂性,但光滑性較差,對于像高速飛機(jī)的機(jī)翼形線,船體放樣等型值線往往要求有二階光滑度,即有二階連續(xù)導(dǎo)數(shù),早期工程師制圖時,把富有彈性的細(xì)長木條(所謂樣條)用壓鐵固定在樣點(diǎn)上,在其他地
10、方讓它自由彎曲,然后畫下長條的曲線,稱為樣條曲線。它實(shí)際上是由分段三次曲線并接而成,在連接點(diǎn)即樣點(diǎn)上要求二階導(dǎo)數(shù)連續(xù),從數(shù)學(xué)上加以概括就得到數(shù)學(xué)樣條這一概念。下面我們討論最常用的三次樣條函數(shù)。四 實(shí)例應(yīng)分析函數(shù)的MATLAB的程序設(shè)計(jì)例1:已知一組數(shù)據(jù)點(diǎn),編寫一程序求解三次樣條插值函數(shù)滿足并針對下面一組具體實(shí)驗(yàn)數(shù)據(jù)0.250.30.390.450.530.50000.54770.62450.67080.7280求解,其中邊界條件為.1)三次樣條插值自然邊界條件源程序:function s=spline3(x,y,dy1,dyn)%x為節(jié)點(diǎn),y為節(jié)點(diǎn)函數(shù)值,dy1,dyn分別為x=0.25,0.
11、53處的二階導(dǎo)m=length(x);n=length(y);if m=n error(x or y輸入有誤) returnendh=zeros(1,n-1);h(n-1)=x(n)-x(n-1);for k=1:n-2 h(k)=x(k+1)-x(k); v(k)=h(k+1)/(h(k+1)+h(k); u(k)=1-v(k);endg(1)=3*(y(2)-y(1)/h(1)-h(1)/2*dy1;g(n)=3*(y(n)-y(n-1)/h(n-1)+h(n-1)/2*dyn;for i=2:n-1 g(i)=3*(u(i-1)*(y(i+1)-y(i)/h(i)+v(i-1)*(y(i
12、)-y(i-1)/h(i-1);endfor i=2:n-1; A(i,i-1)=v(i-1); A(i,i+1)=u(i-1);endA(n,n-1)=1;A(1,2)=1;A=A+2*eye(n);M=zhuigf(A,g); %調(diào)用函數(shù),追趕法求Mfprintf(三次樣條(三對角)插值的函數(shù)表達(dá)式n);syms X;for k=1:n-1 fprintf(S%d-%d:n,k,k+1); s(k)=(h(k)+2*(X-x(k)./h(k).3.*(X-x(k+1).2.*y(k). +(h(k)-2*(X-x(k+1)./h(k).3.*(X-x(k).2.*y(k+1). +(X-x
13、(k).*(X-x(k+1).2./h(k).2*M(k)+(X-x(k+1).*. (X-x(k).2./h(k).2*M(k+1);ends=s.;s=vpa(s,4); %畫三次樣條插值函數(shù)圖像for i=1:n-1 X=x(i):0.01:x(i+1);st=(h(i)+2*(X-x(i)./(h(i)3).*(X-x(i+1).2.*y(i).+(h(i)-2.*(X-x(i+1)./(h(i)3).*(X-x(i).2.*y(i+1).+(X-x(i).*(X-x(i+1).2./h(i)2*M(i)+(X-x(i+1).*.(X-x(i).2./h(i)2*M(i+1); plo
14、t(x,y,o,X,st); hold on Endplot(x,y); grid on%調(diào)用的函數(shù):%追趕法function M=zhuigf(A,g)n=length(A);L=eye(n);U=zeros(n);for i=1:n-1 U(i,i+1)=A(i,i+1);endU(1,1)=A(1,1);for i=2:n L(i,i-1)=A(i,i-1)/U(i-1,i-1); U(i,i)=A(i,i)-L(i,i-1)*A(i-1,i);endY(1)=g(1);for i=2:n Y(i)=g(i)-L(i,i-1)*Y(i-1);endM(n)=Y(n)/U(n,n);for
15、 i=n-1:-1:1 M(i)=(Y(i)-A(i,i+1)*M(i+1)/U(i,i);end2)在命令窗口輸入x,y,dy1,dyn,得到三次樣條函數(shù):x=0.25,0.3,0.39,0.45,0.53;y=0.5,0.5477,0.6245,0.6708,0.7280;dy1=0;dyn=0;s=spline3(x,y,dy1,dyn)運(yùn)行結(jié)果:三次樣條(三對角)插值的函數(shù)表達(dá)式S1-2:S2-3:S3-4:S4-5: .5000*(-3600.+.1600e5*X)*(X-.3000)2+.5477*(5200.-.1600e5*X)*(X-.2500)2+394.8*(X-.250
16、0)*(X-.3000)2+355.2*(X-.3000)*(X-.2500)2 .5477*(-699.6+2743.*X)*(X-.3900)2+.6245*(1193.-2743.*X)*(X-.3000)2+109.6*(X-.3000)*(X-.3900)2+96.77*(X-.3900)*(X-.3000)2 .6245*(-3333.+9259.*X)*(X-.4500)2+.6708*(4444.-9259.*X)*(X-.3900)2+217.7*(X-.3900)*(X-.4500)2+207.6*(X-.4500)*(X-.3900)2 .6708*(-1602.+390
17、6.*X)*(X-.5300)2+.7280*(2227.-3906.*X)*(X-.4500)2+116.8*(X-.4500)*(X-.5300)2+109.2*(X-.5300)*(X-.4500)2如將三次樣條函數(shù)加以整理,可用如下程序:s=collect(s);則輸出結(jié)果為: s= .4595000000000-13.200*X3+9.9000000*X2-1.48800000000*X -.408614400000e-1+2.5768*X3-4.03188800*X2+2.868770320000*X例2 :給出節(jié)點(diǎn)的數(shù)據(jù)如下:-1.00 -0.54 0.13 1.12 1.89
18、2.06 2.54 2.82 3.50-2.46 -5.26 -1.87 0.05 1.65 2.69 4.56 7.89 10.31分別求在下列條件下在插值點(diǎn),處的壓緊三次樣條插值,并顯示該樣條函數(shù)的有關(guān)信息:(1)端點(diǎn)約束條件為,;(2)端點(diǎn)約束條件為,.解(1)輸入MATLAB程序 X=-1.00 -0.54 0.13 1.12 1.89 2.06 2.54 2.82 3.50;Y=-2.46 -5.26 -1.87 0.05 1.65 2.69 4.56 7.89 10.31; XI=-0.02 2.56; YI= spline (X, 5,Y,29.16,XI), PP = spli
19、ne (X, 5,Y,29.16)運(yùn)行后屏幕顯示壓緊樣條分別在,處的插值和該樣條函數(shù)的有關(guān)信息如下YI = -3.1058 4.7834PP = form: pp breaks: -1 -0.5400 0.1300 1.1200 1.8900 2.0600 2.5400 2.8200 3.5000 coefs: 8x4 double pieces: 8 order: 4 dim: 1(2)因?yàn)槎它c(diǎn)約束條件為,所以輸入MATLAB程序 YI= spline (X, 0,Y,0,XI), PP= spline (X, 0,Y,0)運(yùn)行后屏幕顯示壓緊三次樣條分別在,的插值和該樣條函數(shù)的有關(guān)信息如下Y
20、I = -3.0192 4.7501PP = form: pp breaks: -1 -0.5400 0.1300 1.1200 1.8900 2.0600 2.5400 2.8200 3.5000 coefs: 8x4 double pieces: 8 order: 4 dim: 1例3:求有關(guān)分段三次樣條圖形的MATLAB主程序(一)限定端點(diǎn)約束條件的作圖程序function S=splinetx(x0,y0,x,x,y,dy1,dyn)S = spline(x0,dy1,y0,dyn,x);Sn = spline(x0,dy1,y0,dyn,x); plot(x0,y0,o,x,Sn,-
21、,x,S,*,x,y,-.)legend(節(jié)點(diǎn)(xi,yi), 分段三次樣條函數(shù),插值點(diǎn)(x,S),被插值函數(shù)y)(二)不限定端點(diǎn)約束條件的作圖程序function S=splinetx1(x0,y0,xi,x,y)S= interp1(x0,y0,xi, spline); Sn= interp1(x0,y0,x, spline); plot(x0,y0,o,x,Sn,-,xi,S,*,x,y,-.)legend(節(jié)點(diǎn)(xi,yi), 分段三次樣條函數(shù),插值點(diǎn)(x,S),被插值函數(shù)y)(三)自由作圖程序直接在MATLAB工作窗口編程序,例如,subplot(2,2,1),x1=-8:4/3:-
22、4,c1=sin(x1);xx1 = -8:0.1:-4;pp1 = interp1 (x1,c1,xx1,spline ); cc1 =sin(xx1);%pp1 = spline (x1,c1,xx1); plot(x1,c1,bo,xx1,pp1,k-,xx1,cc1,r-.)subplot(2,2,2)x2=-4:4/3:-0;c2=sin(x2); xx2 = -4:0.1:0; pp2 = interp1 (x2,c2,xx2,spline ); cc2=sin(xx2);plot(x2,c2,bo,xx2,pp2,k-,xx2,cc2,r-.)title(y=sinx及其三次樣條
23、插值函數(shù),節(jié)點(diǎn)(xi,yi)的圖形)subplot(2,1,2)x=-8:4/3:8;c=sin(x);xx = -8:0.1:8;pp = spline(x,c,xx);cc=sin(xx); plot(x,c,bo,xx,pp,k-,xx,cc,r-.)legend(節(jié)點(diǎn)(xi,yi),三次樣條插值函數(shù),y=sinx 的函數(shù)),y=cosx 的函數(shù))例4:(機(jī)床加工) 待加工零件的外形根據(jù)工藝要求由一組數(shù)據(jù)(x, y)給出(在平面情況下),用程控銑床加工時每一刀只能沿x方向和y方向走非常小的一步,這就需要從已知數(shù)據(jù)得到加工所要求的步長很小的(x, y)坐標(biāo).表 615給出的x,y數(shù)據(jù)位于機(jī)
24、翼斷面的下輪廓線上(如圖625),假設(shè)需要得到x坐標(biāo)每改變0.1時的y坐標(biāo).試完成加工所需數(shù)據(jù),畫出曲線,并求出x=0處的曲線斜率和13 x 15范圍內(nèi)y的最小值.表 615 機(jī)翼斷面下輪廓線上的部分?jǐn)?shù)據(jù)X035791112131415Y01.21.72.02.12.01.81.21.01.6= = = =圖625 機(jī)翼斷面輪廓線(表 615數(shù)據(jù)用圓點(diǎn)表示)解 根據(jù)上述提出的加工要求,以所給數(shù)據(jù)為節(jié)點(diǎn),在x=0到x=15范圍內(nèi)求步長為0.1的插值.用四種插值方法試驗(yàn),編寫并保存名為sancili6710.m程序?yàn)镸文件x0=0 3 5 7 9 11 12 13 14 15 ; x=0:0.1:
25、15;y0=0 1.2 1.7 2.0 2.1 2.0 1.8 1.2 1.0 1.6 ; yL=lagr1(x0,y0,x);yX=interp1(x0,y0,x); yS=interp1(x0,y0,x,spline); yH=interp1(x0,y0,x, pchip); CZ=x yL yX yS yHsubplot(4,1,1)plot(x0,y0,bo,x,yL,r), grid,title(拉格朗日插值)subplot(4,1,2)plot(x0,y0,bo,x,yX,r), grid,title(分段線性插值)subplot(4,1,3)plot(x0,y0,bo,x,yS,
26、r), grid,title(三次樣條)subplot(4,1,4)plot(x0,y0,bo,x,yH,r), grid,title(分段埃爾米特插值)在MATLAB工作窗口輸入文件名 sancili6710運(yùn)行后得到的拉格朗日插值、分段線性插值、三次樣條插值和分段埃爾米特插值及其節(jié)點(diǎn)的圖形,同時還得到拉格朗日插值、分段埃爾米特插值、分段線性插值和三次樣條插值的結(jié)果五 結(jié)論 MATLAB環(huán)境下編寫求解三次樣條插值的通用程序,可直接顯示各區(qū)間段三次樣條函數(shù)的具體表達(dá)式,計(jì)算出已給點(diǎn)的插值,最后顯示各區(qū)間分段曲線圖,為三次樣條插值函數(shù)的應(yīng)用提供簡便方法。隨著計(jì)算機(jī)技術(shù)及硬件設(shè)施的不斷發(fā)展,計(jì)算機(jī)
27、語言的演化從最開始的機(jī)器語言到匯編語言,最后到支持面向?qū)ο蠹夹g(shù)的面向?qū)ο笳Z言。這就要求提供的計(jì)算方法也不斷發(fā)展。同時在實(shí)踐也給舊的插值逼近方法不斷提出問題,這就要求新的插值逼近方法要更復(fù)雜,誤差精度更高,同時解決更多方面的問題。插值逼近方法的發(fā)展也需要新的理論指導(dǎo)。自然辯證法的科學(xué)理論中提到科學(xué)“范式”概括了插值逼近法得法的發(fā)展過程辯證唯物主義自然觀、自然科學(xué)發(fā)展過程及其規(guī)律,分析與綜合、歸納法與演繹法、想象和類比等科學(xué)邏輯思維方法的應(yīng)用都在插值逼近理論的發(fā)展過程中起到了重要作用。用科學(xué)的邏輯思維方法認(rèn)識事物才會清楚的了解其過去、現(xiàn)在和未來計(jì)算數(shù)學(xué)中的插值逼近方法發(fā)展同樣遵循著科學(xué)技術(shù)、科學(xué)理
28、論發(fā)展的一般規(guī)律以自然辯證法的觀點(diǎn)來分析有助于我們更加深入地認(rèn)識插值逼近以及整個數(shù)值計(jì)算方法發(fā)展的歷史、現(xiàn)狀和趨勢。插值逼近方法及數(shù)學(xué)理論的進(jìn)一步發(fā)展也必將為自然辯證法的發(fā)展提供基礎(chǔ)。本次的課程設(shè)計(jì)的整個過程讓我認(rèn)識到了基礎(chǔ)知識的欠缺,通過查閱大量的資料,從根源上了解,三樣條插值的由來和應(yīng)用范圍等,是我受益良多。切切實(shí)實(shí)的認(rèn)識的努力學(xué)習(xí)的重要性。參考資料1黃明游,馮果忱.數(shù)值分析M.北京:高等教育出版社,2008.2馬東升,雷勇軍.數(shù)值計(jì)算方法M.北京:機(jī)械工業(yè)出版社,2006.3石博強(qiáng),趙金.MATLAB數(shù)學(xué)計(jì)算與工程分析范例教程M.北京:中國鐵道出版社.2005.4郝紅偉,MATLAB 6
29、,北京,中國電力出版社,20015姜健飛,胡良劍,數(shù)值分析及其MATLAB實(shí)驗(yàn), 科學(xué)出版社,20046薛毅,數(shù)值分析實(shí)驗(yàn),北京工業(yè)大學(xué)出版社,2005翻譯Switch語句在幾個case表達(dá)式基礎(chǔ)上的轉(zhuǎn)換。語法:case case_expr statement,.,statement case case_expr1,case_expr2,case_expr3,. statement,.,statement. otherwise statement,.,statementend用法討論:switch表達(dá)式的語法足一種有條件的執(zhí)行碼。特別地,switch執(zhí)行一系列任意的可供選強(qiáng)的數(shù)字下的語句,每一
30、個可選項(xiàng)組成一個case,由以下3個部分組成:(1) case語句。(2) 一個或多個表達(dá)式。(3) 一個或多個語句。在基本語法中,switch執(zhí)行的語句必須滿足switch_exprcase_expr。當(dāng)case表達(dá)式為單元數(shù)組時(如上面的第個case所示),case_expr只有在單元數(shù)組元中有元素匹配switch表達(dá)式時才匹配上。如果沒有case表達(dá)式匹配switch表達(dá)式,則控制轉(zhuǎn)換到otherwise case(如果該項(xiàng)存在的話)。Case執(zhí)行完后,程序必須從switch末尾開始繼續(xù)執(zhí)行。switch_expr是一個標(biāo)量或者一個字符串。如果switch_exprcase_expr成立
31、的,標(biāo)量switch_expr匹配上case_expr。當(dāng)且僅當(dāng)strcmp(switch_expr,case_expr)=1(真)時,一個字符串switch_expr與case_expr匹配。應(yīng)用實(shí)例:執(zhí)行的列編碼塊基于what the string, method, is set to, methodmethod = Bilinear;switch lower(method) case linear,bilinear disp(Method is linear) case cubic disp(Method is cubic) case nearest disp(Method is nea
32、rest) otherwise disp(Unknown method.)endMethod is linear對照英文:Switch among several cases based on expression Syntaxswitch switch_expr case case_expr statement,.,statement case case_expr1,case_expr2,case_expr3,. statement,.,statement. otherwise statement,.,statementendDiscussionThe switch statement sy
33、ntax is a means of conditionally executing code. In particular, switch executes one set of statements selected from an arbitrary number of alternatives. Each alternative is called a case, and consists of The case statement One or more case expressions One or more statements In its basic syntax, switch executes the statements associated with the first case where switch_expr = case_e
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 室內(nèi)消防箱管理制度
- 家委會經(jīng)費(fèi)管理制度
- 庫房紅黃線管理制度
- 強(qiáng)化對餐廳管理制度
- 影像科衛(wèi)生管理制度
- 微信工作群管理制度
- 德智體美勞管理制度
- 快餐店前廳管理制度
- 性傳播疾病管理制度
- 患者床頭卡管理制度
- 老年友善醫(yī)院護(hù)理培訓(xùn)
- 核電行業(yè)核電站安全運(yùn)行與應(yīng)急預(yù)案方案
- 培訓(xùn)學(xué)員管理制度范文(2篇)
- 軟件定義網(wǎng)絡(luò)SDN
- 《有效團(tuán)隊(duì)管理培訓(xùn)》課件
- 2024-2025學(xué)年新教材高中化學(xué) 第四章 物質(zhì)結(jié)構(gòu) 元素周期律 4.1.1 原子結(jié)構(gòu)與元素周期表教案 新人教版必修第一冊
- 2023-2024學(xué)年廣東省深圳市福田區(qū)七年級(下)期末英語試卷
- 2024年陜西省專業(yè)技術(shù)人員繼續(xù)教育學(xué)習(xí)平臺黨史黨紀(jì)專題學(xué)習(xí)考試答案
- 8.3 法治社會 課件高中政治統(tǒng)編版必修三政治與法治
- 醫(yī)療器械經(jīng)營質(zhì)量體系文件-質(zhì)量管理制度
- DB11T 811-2011 場地土壤環(huán)境風(fēng)險(xiǎn)評價篩選值
評論
0/150
提交評論