計(jì)算機(jī)軟件基礎(chǔ)自考本科函數(shù)_第1頁
計(jì)算機(jī)軟件基礎(chǔ)自考本科函數(shù)_第2頁
計(jì)算機(jī)軟件基礎(chǔ)自考本科函數(shù)_第3頁
計(jì)算機(jī)軟件基礎(chǔ)自考本科函數(shù)_第4頁
計(jì)算機(jī)軟件基礎(chǔ)自考本科函數(shù)_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

計(jì)算機(jī)軟件基礎(chǔ)第一篇C語言程序設(shè)計(jì)基礎(chǔ)第四章函數(shù)一、函數(shù)的概念1.函數(shù):是一個(gè)能獨(dú)立完成一定功能的程序段。2.函數(shù)的種類:庫函數(shù)和用戶自定義函數(shù)。庫函數(shù)名類型函數(shù)#include<stdio.h>輸入、輸出類getchar(),putchar();scanf(),printf();

gets(),puts()等函數(shù)。#include<string.h>字符串處理類strlen(),strcat(),strcmp(),strcpy()等函數(shù)。#include<math.h>數(shù)學(xué)類fabs(),sqrt(),sin(),cos()等函數(shù)。一、函數(shù)的概念例4-1求s=2!+3!+7!main(){inti,p,q,r,s;p=1;for(i=1;i<=2;i++)p=p*i;q=1;for(i=1;i<=3;i++)q=q*i;r=1;for(i=1;i<=7;i++)r=r*i;s=p+q+r;printf("s=%d\n",s);}一、函數(shù)的概念例4-1

求s=2!+3!+7!intf1(intn)

/*fl函數(shù)的首部*/{intx=1,i;

/*函數(shù)體中的說明部分*/for(i=1;i<=n;i++)

/*以下為函數(shù)體的語句部*/x=x*i;return(x);

/*返回計(jì)算結(jié)果x的值*/}main()

/*程序由此開始*/{ints;

/*函體中變量定義*/s=f1(2)+f1(3)+f1(7);

/*調(diào)用fl函數(shù),計(jì)算2!+3!+7!的值*/printf("2!+3!+7!=%d\n",s);

/*輸出結(jié)果*/}

/*程序到此結(jié)束*/一、函數(shù)的概念3.函數(shù)的定義:由函數(shù)首部和函數(shù)體兩部分組成。函數(shù)定義一般形式:函數(shù)類型函數(shù)名(形式參數(shù)表列){說明部分;語句部分;}注意:函數(shù)體中說明部分包括:(1)函數(shù)體中所用量的說明;(2)對將要調(diào)用函數(shù)的說明。一、函數(shù)的概念函數(shù)定義說明:(1)函數(shù)類型是函數(shù)執(zhí)行完后返回值的類型;(2)函數(shù)名是由用戶自己命名的標(biāo)識符;(3)形式參數(shù)類似于數(shù)學(xué)函數(shù)中的自變量;(4)定義形參的兩種方法:a.在形參表列中逐個(gè)指明形參的類型,形式為:(類型1形參1,類型2形參2,…)如:intsum(floatx,floaty,floatz)b.在括號內(nèi)只寫形參名,在括號外單獨(dú)定義其類型,如:intsum(x,y,z)floatx,y;intz;二、C程序的結(jié)構(gòu)1.C程序結(jié)構(gòu):(1)一個(gè)C程序必須有而且只能有1個(gè)主函數(shù);(2)C程序的執(zhí)行總是從主函數(shù)開始到主函數(shù)結(jié)束;(3)函數(shù)定義不能嵌套;(4)函數(shù)調(diào)用可以嵌套,但只能是主函數(shù)調(diào)用子函數(shù),子函數(shù)不能調(diào)用主函數(shù)。二、C程序的結(jié)構(gòu)2.書寫順序:若A函數(shù)調(diào)用B函數(shù),則其書寫順序要求:(1)一般情況下,B函數(shù)寫在A函數(shù)的前面;(2)B函數(shù)的類型為int或char時(shí),B可以放在A后面;(3)如果B函數(shù)的類型不為int或char,但又想將B放在A后邊,則必須在A函數(shù)體的說明部分對B函數(shù)進(jìn)行聲明,聲明形式為:函數(shù)B的類型B函數(shù)名(類型1形參1,類型2形參2)或函數(shù)B的類型B函數(shù)名(類型1,類型2)注意:對調(diào)用的函數(shù)聲明時(shí),其形參名可以和定義時(shí)的形參名不同。(1)floatfa(intx,inty){……}main(){……fa(1,3);……}

(2)main(){floatfa(intx,inty);……fa(1,3);……}

floatfa(intx,inty){……}(3)main(){floatfa(int,int);……fa(1,3);……}

floatfa(intx,inty){……}(4)main(){……fa(1,3);……}

intfa(intx,inty){……}三、函數(shù)的參數(shù)和返回值1.函數(shù)的參數(shù)——定義定義示例形參:在函數(shù)定義的首部出現(xiàn)的參數(shù),稱為形參。main(){inta,b,c;scanf(“%d,%d”,&a,&b);c=max(a,b);printf(“Maxis%d“,c);}max(intx,inty){intz;z=x>y?x:y;renturn(z);}

實(shí)參:在調(diào)用函數(shù)時(shí)使用的參數(shù),稱為實(shí)參。形參實(shí)參一、函數(shù)的概念例4-2求兩整數(shù)之和的程序如下:intsum(intx,inty)

/*定義含兩個(gè)形參的sum函數(shù)*/{intz;

/*函數(shù)體中z變量定義*/z=x+y;return(z);

/*返回兩整數(shù)之和*/}main()

/*程序由此開始*/{inta,b,c;scanf("%d,%d",&a,&b);/*輸入a、b兩變量的值*/c=sum(a,b);

/*調(diào)用函數(shù)sum,其中a、b為實(shí)參*/printf("sum=%d\n",c);

/*輸出sum函數(shù)調(diào)用結(jié)果*/}

/*程序到此結(jié)束*/三、函數(shù)的參數(shù)和返回值1.函數(shù)的參數(shù)——形參與實(shí)參之間的關(guān)系相同點(diǎn)不同點(diǎn)個(gè)數(shù)相等實(shí)參必須有確定的數(shù)值順序一致形參必須指定類型類型相符注意:如果形參與實(shí)參的類型不一致,則在調(diào)用函數(shù)時(shí),則自動(dòng)按形參類型轉(zhuǎn)換。形參在函數(shù)被調(diào)用之前不占內(nèi)參;函數(shù)調(diào)用時(shí)為形參分配內(nèi)存;調(diào)用結(jié)束時(shí),所分配的內(nèi)存自動(dòng)釋放。三、函數(shù)的參數(shù)和返回值2.函數(shù)的返回值沒有返回值的函數(shù)有返回值的函數(shù)

若函數(shù)中,renturn語句后面無表達(dá)式,這時(shí)函數(shù)沒有返回值。

沒有返回值的函數(shù),其定義類型為空類型,用類型名void表示。若函數(shù)中,return語句后面有表達(dá)式,則該函數(shù)一定有返回值。return后面表達(dá)式值的類型以所在函數(shù)的類型為準(zhǔn)。當(dāng)函數(shù)類型為int時(shí),函數(shù)類型名int可以不寫,系統(tǒng)默認(rèn)為int。四、函數(shù)的調(diào)用1.函數(shù)調(diào)用的兩種情況沒有返回值的調(diào)用有返回值的調(diào)用調(diào)用格式函數(shù)名(實(shí)參表列);函數(shù)名(實(shí)參表列);說明(1)這種調(diào)用是語句的調(diào)用,沒有返回值;(2)被調(diào)函數(shù)執(zhí)行完后,返回帶主調(diào)函數(shù)中調(diào)用語句的下一條語句繼續(xù)執(zhí)行。(1)這種調(diào)用為表達(dá)式調(diào)用,只能出現(xiàn)在表達(dá)式所能出現(xiàn)的地方;(2)被調(diào)函數(shù)中一定有“return表達(dá)式;”語句,被調(diào)函數(shù)調(diào)用完后執(zhí)行renturn語句,將表達(dá)式的值返回到調(diào)用表達(dá)式處參加運(yùn)算;四、函數(shù)的調(diào)用例4-3下面是求兩個(gè)數(shù)最大值的程序。main()/*程序由此開始*/{voidmax(int,int);/*對被調(diào)空類型函數(shù)max的聲明*/inta,b;scanf("%d,%d",&a,&b);max(a,b);/*用語句調(diào)用max函數(shù)*/}/*程序到此結(jié)束*/voidmax(intx,inty)/*被調(diào)函數(shù)是空類型,無返回值*/{intz;z=x>y?x:y;printf("max=%d\n",z);}/*返回主調(diào)函數(shù)main中調(diào)用語句"max(a,b);"的下一句*/四、函數(shù)的調(diào)用例4-4將例4-3求兩數(shù)最大值改為表達(dá)式調(diào)用。main(){inta,b;scanf("%d,%d",&a,&b);printf("max=%d\n",max(a,b));/*輸出max調(diào)用結(jié)果,"max(a,b)"是調(diào)用表達(dá)式*/}intmax(intx,inty)/*max為整型函數(shù)*/{intz;z=x>y?x:y;returnz;}四、函數(shù)的調(diào)用2.函數(shù)調(diào)用時(shí)的數(shù)據(jù)傳遞之一:單向值傳遞方式定義:調(diào)用函數(shù)時(shí),將實(shí)參計(jì)算出來,賦給形參,即:數(shù)據(jù)只能從實(shí)參單向傳遞給形參。特點(diǎn):(2)函數(shù)中對形參的操作不會(huì)影響到主調(diào)用函數(shù)中的實(shí)參;(3)單向傳遞時(shí),實(shí)參可以是常數(shù),已有值的變量或表達(dá)式。而形參一般是變量。(1)函數(shù)調(diào)用時(shí),為形參臨時(shí)分配一個(gè)存儲(chǔ)空間,而且調(diào)用結(jié)束后,將所分配的臨時(shí)存儲(chǔ)空間收回;四、函數(shù)的調(diào)用例4-5分析程序,寫出運(yùn)算結(jié)果。main(){voidf2(int,int);/*對將要調(diào)用的空類型函數(shù)f2的聲明*/inta=2,b=8;f2(a,b);/*用語句調(diào)用f2函數(shù)*/printf("a=%d,b=%d\n",a,b);/*語句調(diào)用完后返回到該語句*/}voidf2(x,y)/*f2函數(shù)為空類型*/intx,y;/*形參類型說明*/{intm;m=x;x=y;y=m;/*x,y兩變量交換值*/printf("x=%d,y=%d\n",x,y);return;}四、函數(shù)的調(diào)用2.函數(shù)調(diào)用時(shí)的數(shù)據(jù)傳遞之二:地址傳遞方式定義:調(diào)用函數(shù)時(shí),傳遞的相應(yīng)參數(shù)是一個(gè)地址,即變量的存儲(chǔ)地址,對這個(gè)地址內(nèi)的數(shù)據(jù)進(jìn)行訪問或修改會(huì)影響到實(shí)參。特點(diǎn):(1)函數(shù)調(diào)用時(shí),不會(huì)為形參分配存儲(chǔ)空間;(2)形參所指向的是存放實(shí)參的存儲(chǔ)地址;(3)對形參的修改,相當(dāng)于在對實(shí)參進(jìn)行修改。四、函數(shù)的調(diào)用例4-6編寫將數(shù)組a中最大數(shù)和最小數(shù)對調(diào)的程序#defineM6/*程序中凡是出現(xiàn)M的地方,均用6替換*/main()/*程序由此開始*/{voidf3(intx[]);/*對將要調(diào)用的空類型函數(shù)f3聲明*/inta[M],i;for(i=0;i<M;i++)scanf("%d",&a[i]);/*輸入a數(shù)組各元素值*/f3(a);/*語句調(diào)用,f3函數(shù)調(diào)用完后返回到下一句*/for(i=0;i<M;i++)printf("%4d",a[i]);/*輸出對調(diào)后的a數(shù)組值*/printf("\n");}/*程序到此結(jié)束*/四、函數(shù)的調(diào)用voidf3(intx[]){intmax,maxi,min,mini,i,w;max=min=x[0];maxi=mini=0;for(i=1;i<M;i++){if(x[i]>max)/*求最大值max及它的序號maxi*/{max=x[i];maxi=i;}if(x[i]<min)/*求最小值min及它的序號mini*/{min=x[i];mini=i;}}w=x[maxi];x[maxi]=x[mini];/*最大值,最小值交換位置*/x[mini]=w;}/*返回到main主調(diào)函數(shù)中"f3(a);"語句的下一句*/四、函數(shù)的調(diào)用例4-7把A[n][n]二維數(shù)組對角線元素置l,并求其余元素之和,要求用函數(shù)完成。四、函數(shù)的調(diào)用main()/*程序由此開始*/{inta[4][4],i,j,s;for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);/*輸入數(shù)組各元素值*/s=f4(a);/*s中存放除對角線元素外其余元素之和*/for(i=0;i<4;i++){for(j=0;j<4;j++)printf("%4d",a[i][j]);/*輸出對角線元素置1后的數(shù)組*/printf("\n");}四、函數(shù)的調(diào)用intf4(intx[][4]){intsum=0,i,j;for(i=0;i<4;i++)for(j=0;j<4;j++)if(i==j||i+j==3)/*對角線元素包含主對角及副對角元素*/x[i][j]=1;/*置l*/elsesum=sum+x[i][j];/*其余元素求和*/return(sum);/*返回給主調(diào)函數(shù)中S變量*/}四、函數(shù)的調(diào)用3.函數(shù)調(diào)用時(shí)的數(shù)據(jù)傳遞之三:返回值傳遞方式定義:使用“return表達(dá)式;”語句,將值回傳到主調(diào)函數(shù)。特點(diǎn):(1)使用“return表達(dá)式;”語句,來回傳值;(2)使用“返回值類型函數(shù)名(參數(shù)列表)”形式,來定義函數(shù)。五、局部變量和全局變量局部變量全局變量概念在函數(shù)內(nèi)部定義的變量在函數(shù)外部定義的變量作用域所在的函數(shù)整個(gè)程序說明不同函數(shù)中可以使用相同的變量名,但它們是不同的量,相互不干擾。(1)全局變量在程序執(zhí)行過程中,一直占用存儲(chǔ)空間,降低了空間利用率;(2)全局變量牽制了各個(gè)函數(shù),降低了各函數(shù)之間的相對對立性;(3)各函數(shù)執(zhí)行時(shí),都可能改變?nèi)肿兞康闹?,程序容易出錯(cuò)。四、函數(shù)的調(diào)用例4-8intf5(inta,intb)/*函數(shù)f5*/{a=a+b;b=a+b;printf("al=%d,bl=%d\n",a,b);}main()/*程序由此開始*/{inta=5,b=8;f5(a,b);printf("a2=%d,b2=%d\n",a,b);}/*程序到此結(jié)束*/四、函數(shù)的調(diào)用例4-9main(){inta=1,b=2,c=3;a++;c+=b;{intb=4,c;c=2*b;a+=c;printf("al=%d,bl=%d,cl=%d\n",a,b,c);}printf("a2=%d,b2=%d,c2=%d\n",a,b,c);}四、函數(shù)的調(diào)用例4-10輸出l~4的階乘值intf7(intn)/*函數(shù)f7*/{inti,s=1;for(i=1;i<=n;i++)s=s*i;returns;}main()/*主函數(shù)*/{inti;for(i=1;i<=4;i++)printf("%1d!=%d\n",i,f7(i));}

四、函數(shù)的調(diào)用例4-11編寫求N個(gè)數(shù)的最大數(shù)、最小數(shù)及N個(gè)數(shù)的平均值的程序。要求主函數(shù)中輸入這N個(gè)數(shù),輸出上述三個(gè)結(jié)果,f81函數(shù)中求最大值、最小值,f82函數(shù)中求平均值。#defineN5floatmax,min;/*定義max,min為全局變量*/voidf81(floatx[],intn){inti; for(i=0;i<=n;i++){if(x[i]>max)max=x[i];if(x[i]<min)min=x[i];}}floatf82(floatx[],intn){floats=0.0;inti;for(i=0;i<=n;i++)s=s+x[i];s=s/(n+1);returns;}main()/*程序由此開始*/{floata[N],ave;inti;for(i=0;i<=N;i++)scanf("%f",&a[i]);max=min=a[0];f81(a,N);ave=f82(a,N);printf("max=%f,min=%f,ave=%f\n",max,min,ave);}四、函數(shù)的調(diào)用例4-12intx=3,y=8;/*定義x,y為全局變量*/f9(intx,inty)/*形參x、y為局部變量,僅在f9函數(shù)中有效*/{intm;m=x+y;/*m、x、y有效范圍*/return(m);}main(){inty=10;/*局部變量y僅在主函數(shù)中有效*/printf("%d\n",f9(x,y));/*全局變量x=3僅在主函數(shù)中有效*/}無分號六、用static聲明的局部變量autoregisterstatic類型自動(dòng)型寄存器型靜態(tài)型存儲(chǔ)區(qū)內(nèi)存的堆棧區(qū)CPU的寄存器區(qū)內(nèi)存的數(shù)據(jù)區(qū)特點(diǎn)在調(diào)用函數(shù)時(shí),分配一個(gè)臨時(shí)的存儲(chǔ)空間,而且調(diào)用結(jié)束時(shí)將所分配的臨時(shí)存儲(chǔ)空間收回;如果不賦初值,則其中是一個(gè)不確定的值。訪問效率高;調(diào)用函數(shù)結(jié)束時(shí),所占用的寄存器被回收。函數(shù)調(diào)用結(jié)束時(shí),所占用的存儲(chǔ)區(qū)不會(huì)被回收,即變量的值不會(huì)因?yàn)楹瘮?shù)調(diào)用結(jié)束而消失。四、函數(shù)的調(diào)用例4-13計(jì)算并輸出1~4的階乘main(){inti;for(i=1;i<=4;i++)printf("%1d!=%d\n",i,fl0(i));}intfl0(intn){staticintf=1;f=f*n;return(f);}四、函數(shù)的調(diào)用例4-14main(){intk=4,m=1,p;p=f11(k,m);printf("%d,",p);p=f11(k,m);printf("%d",p);}

f11(a,b)inta,b;{staticintm,i=2;i*=m+2;m=i+a+b;return(m);}七、函數(shù)的遞歸調(diào)用程序設(shè)計(jì)中常常要用到遞歸的方法,遞歸過程結(jié)構(gòu)清晰,思路明了,程序易讀。如果在一個(gè)函數(shù)的定義中又引用了自身,那么這個(gè)函數(shù)稱為是遞歸定義的。例如自然數(shù)的集合可遞歸定義為:

1)1是自然數(shù)。

2)一個(gè)自然數(shù)的后繼仍為一個(gè)自然數(shù)。又比如n!的遞歸定義為:七、函數(shù)的遞歸調(diào)用

例4-15采用歸遞方法,編程將一個(gè)正整數(shù)逆序輸出。例如,若輸入1234,則輸出4321。voidf12(intn){if(n<10)printf("%1d",n);/*余下1位數(shù)輸出,函數(shù)執(zhí)行完畢*/else{printf("%ld",n%10);/*輸出右邊的數(shù)*/f12(n/10);}/*去掉右邊數(shù)后余下的數(shù),直接調(diào)用本函數(shù)fl2*/}/*返回*/main()/*主程序開始*/{intn;scanf("%d",&n);/*輸入整數(shù)*/f12(n);/*調(diào)用f12函數(shù)*/}七、函數(shù)的遞歸調(diào)用例4-16編寫求n!的遞歸程序。七、函數(shù)的遞歸調(diào)用floatf13(intn){if(n==0||n==1)return(1.0);elsereturn(n*f13(n-1));}main(){intn;

floatw;scanf("%d",&n);w=f13(n);printf("%d!=%f\n",n,w);}七、函數(shù)的遞歸調(diào)用例4-17用梯形法計(jì)算七、函數(shù)的遞歸調(diào)用七、函數(shù)的遞歸調(diào)用例4-17用梯形法計(jì)算floatf14(floatx){floaty;y=2.0*x*x+3.0*x+1.0;return(y);}main(){floata,b,h,w,s=0.0,y1,y2;inti,n;

scanf("%d,%f,%f",&n,&a,&b);

/*輸入等分?jǐn)?shù)n,積分區(qū)間下上限a,b*/

h=(b-a)/n;

/*梯形的高*/

y1=f14(a);

/*第一個(gè)梯形的上底*/

for(i=1;i<=n;i++)

{y2=f14(a+i*h);

/*第i個(gè)梯形的下底*/

w=(y1+y2)*h/2.0;/*第i個(gè)梯形的面積*/

s=s+w;

/*梯形面積累加*/

y1=y2;/*第i個(gè)梯形的下底為第i+1個(gè)梯形的上底*/}

printf("s=%f\n",s);}七、函數(shù)的遞歸調(diào)用例4-18輸入三個(gè)整數(shù)分別賦予變量a、b、c。判斷它們是否能成為三角形的三邊,若可以,則計(jì)算其面積并輸出結(jié)果。要求輸入數(shù)據(jù)的合理性及求面積均使用函數(shù)。#include<math.h>

/*程序中用到了數(shù)學(xué)系統(tǒng)函數(shù)*/inta,b,c,w;

/*a、b、c、w為全局變量*/floats;

/*面積S為全局變量*/main(){

intenter();

/*合理性判斷函數(shù)的聲明*/

floatarea(int,int,int);/*計(jì)算面積函數(shù)的聲明*/

w=enter();

/*調(diào)用合理性判斷函數(shù)*/

if(w)

/*若a、b、e為三角形三邊*/

{

s=area(a,b,c);/*調(diào)用計(jì)算面積函數(shù)*/

printf("s=%f\n",s);}

else/*若a、b、c不為三角形三邊*/

printf("Badinput!\n");}

七、函數(shù)的遞歸調(diào)用intenter()

/*合理性判斷函數(shù)*/{scanf("%d,%d,%d",&a,&b,&c);/*輸入a、b、c值*/if(a>0&&b>0&&c>0&&a+b>c&&b+c>a&&a+c>b)return(1);

/*可以構(gòu)成三角形三邊*/elsereturn(0);

/*不可以構(gòu)成三角形三邊*/}floatarea(inta,intb,intc)

/*計(jì)算面積函數(shù)*/{

floatL,s;

L=(a+b+c)/2.0;

/*計(jì)算半周長*/

s=sqrt(L*(L-a)*(L-b)*(L-c));

/*求面積*/

return(s);}歷年真題演練1.(2010.4單選)執(zhí)行下列C程序,輸出結(jié)果是()intt=1;voidsum(intp){intt=10; t+=p++; printf("%d",t);}main(){intm=5; sum(m); t+=m++; printf(",%d\n",t);}A15,6B16,6C17,6D17,7歷年真題演練2.(2010.4填空)用數(shù)組元素作為實(shí)參,則實(shí)參向形參傳遞的是。3.(2010.4程序設(shè)計(jì))編寫C語言函數(shù)f(floatx),并用主函數(shù)調(diào)用該函數(shù),輸出計(jì)算結(jié)果。歷年真題演練

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論