三章函數(shù)專題培訓(xùn)市公開課金獎市賽課一等獎?wù)n件_第1頁
三章函數(shù)專題培訓(xùn)市公開課金獎市賽課一等獎?wù)n件_第2頁
三章函數(shù)專題培訓(xùn)市公開課金獎市賽課一等獎?wù)n件_第3頁
三章函數(shù)專題培訓(xùn)市公開課金獎市賽課一等獎?wù)n件_第4頁
三章函數(shù)專題培訓(xùn)市公開課金獎市賽課一等獎?wù)n件_第5頁
已閱讀5頁,還剩72頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第三章函數(shù)C++語言程序設(shè)計1第1頁第1頁本章主要內(nèi)容函數(shù)申明和調(diào)用函數(shù)間參數(shù)傳遞內(nèi)聯(lián)函數(shù)帶缺省形參值函數(shù)函數(shù)重載函數(shù)模板C++系統(tǒng)函數(shù)2第2頁第2頁函數(shù)申明函數(shù)是面向?qū)ο蟪绦蛟O(shè)計中基本抽象單元,是對功效抽象函數(shù)申明語法形式類型標識符函數(shù)名(形式參數(shù)表){語句序列}函數(shù)申明與使用若無參數(shù),寫void是被初始化內(nèi)部變量,壽命和可見性僅限于函數(shù)內(nèi)部若無返回值,寫void3第3頁第3頁函數(shù)申明形式參數(shù)表<type1>name1,<type2>name2,...,<typen>namen函數(shù)返回值由return語句給出,比如:

return0無返回值函數(shù)(void類型),不必寫return語句。函數(shù)申明與使用4第4頁第4頁函數(shù)調(diào)用調(diào)用前先闡明函數(shù)原型:在調(diào)用函數(shù)闡明部分,或程序文獻開頭所有函數(shù)之前,按下列形式闡明:

類型標識符被調(diào)用函數(shù)名(含類型闡明形參表);調(diào)用形式

函數(shù)名(實參列表)嵌套調(diào)用函數(shù)不允許嵌套申明,但能夠嵌套調(diào)用。遞歸調(diào)用函數(shù)直接或間接調(diào)用本身。函數(shù)申明與使用5第5頁第5頁例3-1編寫一個求xn次方函數(shù)#include<iostream.h>double power(doublex,intn);voidmain(void){ cout<<"5tothepower2is"

<<power(5,2)<<endl;}double power(doublex,intn){ doubleval=1.0; while(n--) val=val*x; return(val);}函數(shù)申明與使用6第6頁第6頁運營結(jié)果:5tothepower2is25例3-1編寫一個求xn次方函數(shù)函數(shù)申明與使用7第7頁第7頁例3-2數(shù)制轉(zhuǎn)換題目:輸入一個8位二進制數(shù),將其轉(zhuǎn)換為十進制數(shù)輸出。比如:11012=1(23)+1(22)+0(21)+1(20)

=1310

因此,假如輸入1101,則應(yīng)輸出13函數(shù)申明與使用8第8頁第8頁#include<iostream.h>doublepower(doublex,intn);voidmain(void){ inti; intvalue=0; charch;

cout<<"Enteran8bitbinarynumber"; for(i=7;i>=0;i--) { cin>>ch; if(ch=='1') value+=int(power(2,i)); } cout<<"Decimalvalueis"<<value<<endl;}9第9頁第9頁doublepower(doublex,intn){ doubleval=1.0; while(n--) val*=x; return(val);}運營結(jié)果:Enteran8bitbinarynumber01101001Decimalvalueis10510第10頁第10頁例3-3編寫程序求π值其中arctan用下列形式級數(shù)計算:直到級數(shù)某項絕對值小于10-15為止;π和x均為double型。函數(shù)申明與使用11第11頁第11頁#include<iostream.h>voidmain(){doublea,b;doublearctan(doublex);a=16.0*arctan(1/5.0);b=4.0*arctan(1/239.0);//注意:由于整數(shù)相除結(jié)果取整,//假如參數(shù)寫1/5,1/239,結(jié)果就都是0cout<<"PI="<<a-b<<endl;}12第12頁第12頁doublearctan(doublex){inti;doubler,e,f,sqr;sqr=x*x;r=0;e=x;i=1;while(e/i>1e-15){f=e/i;r=(i%4==1)?r+f:r-f;e=e*sqr;i+=2;}returnr;}運營結(jié)果:PI=3.1415913第13頁第13頁運營結(jié)果:PI=3.1415914第14頁第14頁例3-4尋找并輸出11~999之間數(shù)m,它滿足m、m2和m3均為回文數(shù)?;匚模焊魑粩?shù)字左右對稱整數(shù)。

比如:11滿足上述條件

112=121,113=1331。分析:10取余辦法,從最低位開始,依次取出該數(shù)各位數(shù)字。按反序重新構(gòu)成新數(shù),比較與原數(shù)是否相等,若相等,則原數(shù)為回文。函數(shù)申明與使用15第15頁第15頁#include<iostream.h>voidmain(){boolsymm(longn);longm;for(m=11;m<1000;m++)if(symm(m)&&symm(m*m)&&symm(m*m*m))cout<<"m="<<m<<"m*m="<<m*m<<"m*m*m="<<m*m*m<<endl;}16第16頁第16頁boolsymm(longn){longi,m;i=n;m=0;while(i){m=m*10+i%10;i=i/10;}return(m==n);}17第17頁第17頁運營結(jié)果:m=11m*m=121m*m*m=1331m=101m*m=10201m*m*m=1030301m=111m*m=12321m*m*m=136763118第18頁第18頁例3-5計算下列公式,并輸出結(jié)果:其中r、s值由鍵盤輸入。SINx近似值按下列公式計算,計算精度為10-6:函數(shù)申明與使用19第19頁第19頁#include<iostream.h>#include<math.h>voidmain(){doublek,r,s;doubletsin(doublex);cout<<"r=";cin>>r;cout<<"s=";cin>>s;if(r*r<=s*s)k=sqrt(tsin(r)*tsin(r)+tsin(s)*tsin(s));elsek=tsin(r*s)/2;cout<<k<<endl;}20第20頁第20頁doubletsin(doublex){doublep=0.000001,g=0,t=x;intn=1;do{g=g+t;n++;t=-t*x*x/(2*n-1)/(2*n-2);}while(fabs(t)>=p);returng;}運營結(jié)果:r=5s=81.3778121第21頁第21頁例3-6投骰子隨機游戲游戲規(guī)則是:每個骰子有六面,點數(shù)分別為1、2、3、4、5、6。游戲者在程序開始時輸入一個無符號整數(shù),作為產(chǎn)生隨機數(shù)種子。每輪投兩次骰子,第一輪假如和數(shù)為7或11則為勝,游戲結(jié)束;和數(shù)為2、3或12則為負,游戲結(jié)束;和數(shù)為其它值則將此值作為自己點數(shù),繼續(xù)第二輪、第三輪...直到某輪和數(shù)等于點數(shù)則取勝,若在以前出現(xiàn)和數(shù)為7則為負。由rolldice函數(shù)負責模擬投骰子、計算和數(shù)并輸出和數(shù)。函數(shù)申明與使用22第22頁第22頁rand函數(shù)原型:intrand(void);所需頭文獻:<stdlib.h>功效和返回值:求出并返回一個偽隨機數(shù)srand函數(shù)原型:voidsrand(unsignedintseed);參數(shù):seed產(chǎn)生隨機數(shù)種子。所需頭文獻:<stdlib.h>功效:為使rand()產(chǎn)生一序列偽隨機整數(shù)而設(shè)置起始點。使用1作為seed參數(shù),能夠重新初化rand()。23第23頁第23頁#include<iostream.h>#include<stdlib.h>introlldice(void);voidmain(){intgamestatus,sum,mypoint;unsignedseed;cout<<"Pleaseenteranunsignedinteger:";cin>>seed;//輸入隨機數(shù)種子srand(seed);//將種子傳遞給rand()sum=rolldice();//第一輪投骰子、計算和數(shù)24第24頁第24頁switch(sum){case7://假如和數(shù)為7或11則為勝,狀態(tài)為1case11:gamestatus=1;break;case2://和數(shù)為2、3或12則為負,狀態(tài)為1case3:case12:gamestatus=2;break;default://其它情況,游戲尚無結(jié)果,狀態(tài)為0,記下點數(shù),為下一輪做準備gamestatus=0;mypoint=sum;cout<<"pointis"<<mypoint<<endl;break;}25第25頁第25頁while(gamestatus==0)//只要狀態(tài)仍為0,就繼續(xù)進行下一輪{sum=rolldice();if(sum==mypoint)//某輪和數(shù)等于點數(shù)則取勝,狀態(tài)置為1gamestatus=1;elseif(sum==7)//出現(xiàn)和數(shù)為7則為負,狀態(tài)置為2gamestatus=2;}//當狀態(tài)不為0時上面循環(huán)結(jié)束,下列程序段輸出游戲結(jié)果if(gamestatus==1)cout<<"playerwins\n";elsecout<<"playerloses\n";}26第26頁第26頁introlldice(void){//投骰子、計算和數(shù)、輸出和數(shù)intdie1,die2,worksum;die1=1+rand()%6;die2=1+rand()%6;worksum=die1+die2;cout<<"playerrolled"<<die1<<'+'<<die2<<'='<<worksum<<endl;returnworksum;}27第27頁第27頁運營結(jié)果2:Pleaseenteranunsignedinteger:23playerrolled6+3=9pointis9playerrolled5+4=9playerwins28第28頁第28頁函數(shù)調(diào)用執(zhí)行過程函數(shù)申明與使用main()調(diào)fun()結(jié)束fun()返回①②④⑥⑦保留:返回地址當前現(xiàn)場③恢復(fù):主調(diào)程序現(xiàn)場返回地址⑤29第29頁第29頁嵌套調(diào)用函數(shù)申明與使用main{}調(diào)fun1()結(jié)束fun1()調(diào)fun2()返回fun2()返回①②③⑦④⑤⑥⑧⑨30第30頁第30頁例3-7輸入兩個整數(shù),求平方和。#include<iostream.h>voidmain(void){inta,b;intfun1(intx,inty);cin>>a>>b;cout<<"a、b平方和:"

<<fun1(a,b)<<endl;}函數(shù)申明與使用31第31頁第31頁intfun1(intx,inty){intfun2(intm);return(fun2(x)+fun2(y));}intfun2(intm){return(m*m);}運營結(jié)果:34a、b平方和:2532第32頁第32頁遞歸調(diào)用函數(shù)直接或間接地調(diào)用本身,稱為遞歸調(diào)用。遞歸過程兩個階段:遞推:

4!=4×3!→3!=3×2!→2!=2×1!→1!=1×0!→0!=1未知已知回歸:4!=4×3!=24←3!=3×2!=6←2!=2×1!=2←1!=1×0!=1←0!=1未知已知函數(shù)申明與使用33第33頁第33頁例3-8求n!分析:計算n!公式下列:這是一個遞歸形式公式,應(yīng)當用遞歸函數(shù)實現(xiàn)。函數(shù)申明與使用34第34頁第34頁源程序:#include<iostream.h>longfac(intn){longf;if(n<0)cout<<"n<0,dataerror!"<<endl;

elseif(n==0)f=1;elsef=fac(n-1)*n;return(f);}35第35頁第35頁voidmain(){longfac(intn);intn;longy;cout<<"Enterapositiveinteger:";cin>>n;y=fac(n);cout<<n<<"!="<<y<<endl;}運營結(jié)果:Enterapositiveinteger:88!=4032036第36頁第36頁例3-9用遞歸法計算從n個人中選擇k個人組成一個委員會不同組合數(shù)。分析:由n個人里選k個人組合數(shù)=由n-1個人里選k個人組合數(shù)+由n-1個人里選k-1個人組合數(shù)當n==k或k==0時,組合數(shù)為1函數(shù)申明與使用37第37頁第37頁#include<iostream.h>voidmain(){intn,k;intcomm(intn,intk);cin>>n>>k;cout<<comm(n,k)<<endl;}intcomm(intn,intk){if(k>n)return0;elseif(n==k||k==0)return1;elsereturncomm(n-1,k)+comm(n-1,k-1);}運營結(jié)果:185856838第38頁第38頁例3-10漢諾塔問題有三根針A、B、C。A針上有N個盤子,大在下,小在上,要求把這N個盤子從A針移到C針,在移動過程中能夠借助B針,每次只允許移動一個盤,且在移動過程中在三根針上都保持大盤在下,小盤在上。函數(shù)申明與使用ABC39第39頁第39頁分析:將n個盤子從A針移到C針能夠分解為下面三個環(huán)節(jié):①將A上n-1個盤子移到B針上(借助C針);②把A針上剩余一個盤子移到C針上;③將n-1個盤子從B針移到C針上(借助A針);事實上,上面三個環(huán)節(jié)包括兩種操作:①將多個盤子從一個針移到另一個針上,這是一個遞歸過程。hanoi函數(shù)實現(xiàn)。②將1個盤子從一個針上移到另一針上。

用move函數(shù)實現(xiàn)。40第40頁第40頁#include<iostream.h>voidmove(chargetone,charputone){cout<<getone<<"-->"<<putone<<endl;}voidhanoi(intn,charone,chartwo,charthree){ voidmove(chargetone,charputone); if(n==1)move(one,three); else {hanoi(n-1,one,three,two); move(one,three); hanoi(n-1,two,one,three); }}41第41頁第41頁voidmain(){ voidhanoi(intn,charone,chartwo,charthree); intm; cout<<"Enterthenumberofdiskes:"; cin>>m; cout<<"thestepstomoving"<<m<<"diskes:"<<endl; hanoi(m,'A','B','C');}42第42頁第42頁運營結(jié)果:Enterthenumberofdiskes:3thestepstomoving3diskes:A-->CA-->BC-->BA-->CB-->AB-->CA-->C43第43頁第43頁函數(shù)參數(shù)傳遞機制

——傳遞參數(shù)值在函數(shù)被調(diào)用時才分派形參存儲單元。實參能夠是常量、變量或表示式。實參類型必須與形參相符。傳遞時是傳遞參數(shù)值,即單向傳遞。函數(shù)申明與使用44第44頁第44頁函數(shù)參數(shù)傳遞機制

——參數(shù)值傳遞舉例XN被調(diào)函數(shù):主調(diào)函數(shù):32.5AD=power(A,3)2.53doublepower(doubleX,intN)函數(shù)申明與使用45第45頁第45頁例3-11輸入兩整數(shù)互換后輸出#include<iostream.h>voidSwap(inta,intb);intmain(){ intx(5),y(10); cout<<"x="<<x<<"y="<<y<<endl;

Swap(x,y); cout<<"x="<<x<<"y="<<y<<endl; return0;}函數(shù)申明與使用46第46頁第46頁voidSwap(inta,intb){ intt; t=a; a=b; b=t;}運營結(jié)果: x=5y=10 x=5y=1047第47頁第47頁函數(shù)參數(shù)傳遞

——用引用做形參引用(&)是標識符別名,比如:inti,j;

int&ri=i;

//建立一個int型引用ri,并將其

//初始化為變量i一個別名

j=10;

ri=j;//相稱于i=j;申明一個引用時,必須同時對它進行初始化,使它指向一個已存在對象。一旦一個引用被初始化后,就不能改為指向其它對象。引用能夠作為形參

voidswap(int&a,int&b){...}函數(shù)申明與使用48第48頁第48頁例3-12輸入兩個整數(shù)互換后輸出#include<iostream.h>voidSwap(int&a,int&b);intmain(){ intx(5),y(10); cout<<"x="<<x<<"y="<<y<<endl;

Swap(x,y); cout<<"x="<<x<<"y="<<y<<endl; return0;}函數(shù)申明與使用49第49頁第49頁voidSwap(int&a,int&b){ intt; t=a; a=b; b=t;}運營結(jié)果: x=5y=10 x=10y=550第50頁第50頁t=a;x5t5x地址axy510y地址x地址aby地址x地址abx10y10a=bb=t;y5t5y地址bxy105Swap(x,y);51第51頁第51頁例3-13引用調(diào)用舉例#include<iostream.h>#include<iomanip.h>voidfiddle(intin1,int&in2);intmain(){intcount=7,index=12;cout<<"Thevaluesare";cout<<setw(5)<<count;cout<<setw(5)<<index<<endl;

fiddle(count,index);cout<<"Thevaluesare";cout<<setw(5)<<count;cout<<setw(5)<<index<<endl;return0;}函數(shù)申明與使用52第52頁第52頁voidfiddle(intin1,int&in2){

in1=in1+100;

in2=in2+100;cout<<"Thevaluesare";cout<<setw(5)<<in1;cout<<setw(5)<<in2<<endl;}運營結(jié)果:Thevaluesare712Thevaluesare107112Thevaluesare711253第53頁第53頁內(nèi)聯(lián)函數(shù)申明與使用申明時使用關(guān)鍵字inline。編譯時在調(diào)用處用函數(shù)體進行替換,節(jié)約了參數(shù)傳遞、控制轉(zhuǎn)移等開銷。注意:內(nèi)聯(lián)函數(shù)體內(nèi)不能有循環(huán)語句和switch語句。內(nèi)聯(lián)函數(shù)申明必須出現(xiàn)在內(nèi)聯(lián)函數(shù)第一次被調(diào)用之前。對內(nèi)聯(lián)函數(shù)不能進行異常接口申明。內(nèi)聯(lián)函數(shù)54第54頁第54頁例3-14內(nèi)聯(lián)函數(shù)應(yīng)用舉例#include<iostream.h>inlinedoubleCalArea(doubleradius){ return3.14*radius*radius;}intmain(){ doubler(3.0); doublearea; area=CalArea(r); cout<<area<<endl; return0;}內(nèi)聯(lián)函數(shù)55第55頁第55頁缺省形參值作用函數(shù)在申明時能夠預(yù)先給出默認形參值,調(diào)用時如給出實參,則采用實參值,不然采用預(yù)先給出默認形參值。比如:intadd(intx=5,inty=6){returnx+y;}voidmain(void){add(10,20);//10+20add(10);//10+6add();//5+6}帶缺省形參值函數(shù)56第56頁第56頁缺省形參值闡明順序缺省形參值必須從右向左順序申明,并且在缺省形參值右面不能有非缺省形參值參數(shù)。由于調(diào)用時實參取代形參是從左向右順序。例:intadd(intx,inty=5,intz=6);//正確intadd(intx=1,inty=5,intz);//錯誤intadd(intx=1,inty,intz=6);//錯誤帶缺省形參值函數(shù)57第57頁第57頁缺省形參值與函數(shù)調(diào)用位置調(diào)用出現(xiàn)在函數(shù)體實現(xiàn)之前時,缺省形參值必須在函數(shù)原形中給出;而當調(diào)用出現(xiàn)在函數(shù)體實現(xiàn)之后時,缺省形參值需在函數(shù)實現(xiàn)時給出。例:intadd(intx=5,inty=6);voidmain(void){add();

//調(diào)用在實現(xiàn)前}intadd(intx,inty){returnx+y;}intadd(intx=5,inty=6){returnx+y;}voidmain(void){add();

//調(diào)用在實現(xiàn)后}帶缺省形參值函數(shù)58第58頁第58頁缺省形參值作用域在相同作用域內(nèi),缺省形參值說明應(yīng)保持唯一,但假如在不同作用域內(nèi),允許說明不同缺省形參。例:intadd(intx=1,inty=2);voidmain(void){intadd(intx=3,inty=4);add();//使用局部缺省形參值(實現(xiàn)3+4)}voidfun(void){...add();//使用全局缺省形參值(實現(xiàn)1+2)}帶缺省形參值函數(shù)59第59頁第59頁例3-15帶缺省形參值函數(shù)舉例#include<iostream.h>#include<iomanip.h>intget_volume(intlength,intwidth=2,intheight=3);intmain(){intx=10,y=12,z=15;cout<<"Someboxdatais";cout<<get_volume(x,y,z)<<endl;cout<<"Someboxdatais";cout<<get_volume(x,y)<<endl;cout<<"Someboxdatais";cout<<get_volume(x)<<endl;cout<<"Someboxdatais";cout<<get_volume(x,7)<<endl;cout<<"Someboxdatais";cout<<get_volume(5,5,5)<<endl;return0;}帶缺省形參值函數(shù)60第60頁第60頁intget_volume(intlength,intwidth,

intheight){cout<<setw(5)<<length

<<setw(5)<<width<<setw(5)<<height<<'';returnlength*width*height;}運營結(jié)果:Someboxdatais1012151800Someboxdatais10123360Someboxdatais102360Someboxdatais1073210Someboxdatais55512561第61頁第61頁重載函數(shù)申明C++允許功效相近函數(shù)在相同作用域內(nèi)以相同函數(shù)名申明,從而形成重載。以便使用,便于記憶。例:形參類型不同intadd(intx,inty);floatadd(floatx,floaty);形參個數(shù)不同intadd(intx,inty);intadd(intx,inty,intz);函數(shù)重載62第62頁第62頁注意事項不要將不同功效函數(shù)申明為重載函數(shù),以免出現(xiàn)調(diào)用結(jié)果誤解、混同。這么不好:intadd(intx,inty);intadd(inta,intb);編譯器不以形參名來區(qū)別intadd(intx,inty);voidadd(intx,inty);編譯器不以返回值來區(qū)別intadd(intx,inty){returnx+y;}floatadd(floatx,floaty){returnx-y;}函數(shù)重載重載函數(shù)形參必須不同:個數(shù)不同或類型不同。編譯程序?qū)⒁罁?jù)實參和形參類型及個數(shù)最正確匹配來選擇調(diào)用哪一個函數(shù)。63第63頁第63頁例3-16重載函數(shù)應(yīng)用舉例編寫三個名為add重載函數(shù),分別實現(xiàn)兩整數(shù)相加、兩實數(shù)相加和兩個復(fù)數(shù)相加功效。#include<iostream.h>structcomplex{ doublereal; doubleimaginary;};64第64頁第64頁voidmain(void){ intm,n; doublex,y; complexc1,c2,c3; intadd(intm,intn); doubleadd(doublex,doubley); complexadd(complexc1,complexc2); cout<<"Entertwointeger:"; cin>>m>>n; cout<<"integer"<<m<<'+'<<n<<"="<<add(m,n)<<endl;65第65頁第65頁 cout<<"Entertworealnumber:"; cin>>x>>y; cout<<"realnumber"<<x<<'+'<<y<<"="<<add(x,y)<<endl; cout<<"Enterthefirstcomplexnumber:"; cin>>c1.real>>c1.imaginary; cout<<"Enterthesecondcomplexnumber:"; cin>>c2.real>>c2.imaginary; c3=add(c1,c2); cout<<"complexnumber("<<c1.real<<','<<c1.imaginary<<")+("<<c2.real<<','<<c2.imaginary<<")=("<<c3.real<<','<<c3.imaginary<<")\n";}66第66頁第66頁intadd(intm,intn){returnm+n;}doubleadd(doublex,doubley){returnx+y;}complexadd(complexc1,complexc2){complexc; c.real=c1.real+c2.real; c.imaginary=c1.imaginary+c2.imaginary; returnc;}67第67頁第67頁運營結(jié)果:Entertwointeger:35integer3+5=8Entertworealnumber:2.35.8realnumber2.3+5.8=8.1Enterthefirstcomplexnumber:12.345.6Enterthesecondcomplexnumber:56.767.8complexnumber(12.3,45.6)+(56.7,67.8)=(69,113.4)68第

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論