C語(yǔ)言程序設(shè)計(jì)課件-第4章 函數(shù)_第1頁(yè)
C語(yǔ)言程序設(shè)計(jì)課件-第4章 函數(shù)_第2頁(yè)
C語(yǔ)言程序設(shè)計(jì)課件-第4章 函數(shù)_第3頁(yè)
C語(yǔ)言程序設(shè)計(jì)課件-第4章 函數(shù)_第4頁(yè)
C語(yǔ)言程序設(shè)計(jì)課件-第4章 函數(shù)_第5頁(yè)
已閱讀5頁(yè),還剩33頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第4章函數(shù)

按結(jié)構(gòu)化程序設(shè)計(jì)的要求,通??蓪⒊绦虬垂δ芊殖扇舾赡K,每個(gè)模塊又可分成更小的模塊,逐層細(xì)化至每個(gè)模塊只完成特定的功能。按此原則編寫的程序?qū)哟吻逦?、可讀性強(qiáng)、易于修改和維護(hù),亦便于多個(gè)成員合作編寫程序。

C語(yǔ)言中,模塊由函數(shù)實(shí)現(xiàn)。函數(shù)是完成特定功能的程序段,是C程序的基本單位。一個(gè)C程序由一個(gè)或多個(gè)函數(shù)組成,這些函數(shù)可以放在一個(gè)或多個(gè)源程序文件中。

4.1.1函數(shù)的基本概念

C程序中有一個(gè)函數(shù)是必須存在的,這就是main函數(shù)(又稱為主函數(shù))。main函數(shù)是唯一的。main函數(shù)是C程序執(zhí)行的入口,即程序開始執(zhí)行時(shí),系統(tǒng)首先調(diào)用main函數(shù)執(zhí)行。

C程序中所有函數(shù)的定義是平行的,函數(shù)之間不存在嵌套或從屬的關(guān)系,但是函數(shù)之間可以相互調(diào)用。除main函數(shù)不能被其他函數(shù)調(diào)用外,其他函數(shù)都是一個(gè)可以反復(fù)使用的程序段。函數(shù)是通過(guò)被調(diào)用而執(zhí)行的。【例4.1】編寫程序計(jì)算兩個(gè)整數(shù)絕對(duì)值階乘之差。

#include"math.h"

#include"stdio.

intfac(intn)/*計(jì)算一個(gè)整數(shù)絕對(duì)值的階乘*/

{inti,f=1;

n=abs(n);

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

f=f*i;

return(f);

}main(){intx,y,c1,c2;printf("pleaseenterx,y:");scanf("%d%d",&x,&y);c1=fac(x);/*調(diào)用fac,求x絕對(duì) 值的階乘*/c2=fac(y);/*調(diào)用fac,求y絕對(duì)值 的階乘*/printf("theoutcomeis%d\n",c1-c2);/*輸出結(jié)果*/}輸入-7、2時(shí)的運(yùn)行結(jié)果為:pleaseenterx,y:-72↙theoutcomeis5038

函數(shù)是有區(qū)別的:

系統(tǒng)函數(shù)(庫(kù)函數(shù)):可以直接使用,由C系統(tǒng)提供,如 scanf、printf和abs函數(shù)。

用戶自定義函數(shù):還有一種是用戶必須定義后才能使用的 函數(shù),例如例6.1中的fac函數(shù)。4.1.2函數(shù)的定義

●編寫C程序的主要工作就是編寫用戶自定義函數(shù),即 所謂的函數(shù)定義。

●函數(shù)定義的一般形式:

類型標(biāo)識(shí)符函數(shù)名(形式參數(shù)表列)

{

聲明部分

執(zhí)行部分

}

【例4.2】求兩個(gè)整數(shù)的之和。

#include“stdio.h”

voidstart_information()

{printf(“Theprogrambegin!\n”);

}

intsum(intx1,intx2)/*定義函數(shù) 的返回值類型,函數(shù)名,形參*/

{ints;

s=x1+x2;/*計(jì)算x1和x2之和*/

return(s);/*返回運(yùn)算結(jié)果*/

}

voidend_information()

{printf("Theprogramend!\n");

}

main(){intx,y,z,s;start_information();printf("enterxy:");scanf("%d%d",&x,&y);s=sum(x,y);printf("thesumis%d\n",s);end_information();}輸入23、4時(shí),程序運(yùn)行結(jié)果為:Theprogrambegin!enterxy:234↙thesumis27Theprogramend!編寫函數(shù)注意:

①函數(shù)名要符合標(biāo)識(shí)符的命名規(guī)則,例如,

start_information

end_information。

②函數(shù)定義時(shí)的參數(shù)稱為形式參數(shù),簡(jiǎn)稱形參。

●形式參數(shù)列表說(shuō)明的是函數(shù)間要傳遞的數(shù)據(jù)。

●函數(shù)調(diào)用時(shí)主調(diào)函數(shù)把實(shí)際參數(shù)傳遞給形式參數(shù),然 后被調(diào)用函數(shù)利用實(shí)際參數(shù)進(jìn)行運(yùn)算。

③若有多個(gè)形參,形參之間用逗號(hào)分隔。

例如,“intsum(intx1,intx2)”。

④如果在形式參數(shù)列表中只列出參數(shù)名,則需要在其后說(shuō)明每個(gè)參數(shù)的類型,函數(shù)定的形式變?yōu)椋?/p>

類型標(biāo)識(shí)符函數(shù)名(形式參數(shù)表列)

形式參數(shù)類型說(shuō)明;

{聲明部分

執(zhí)行部分

}

intsum(x1,x2)/*定義返回值類型,函數(shù)名,形參*/

intx1,x2;

{ints;

s=x1+x2;/*計(jì)算x1和x2之和,放到s中*/

return(s);/*返回運(yùn)算結(jié)果*/

}⑤如果函數(shù)不需要數(shù)據(jù)傳遞,形式參數(shù)表為空,但“()”不能省略。

例如start_information()

end_information()。

⑥花括弧內(nèi)的內(nèi)容稱為“函數(shù)體”。

聲明部分對(duì)函數(shù)內(nèi)使用變量定義和聲明,以及對(duì)被調(diào)用函數(shù)的聲明。

執(zhí)行部分是實(shí)現(xiàn)函數(shù)功能的語(yǔ)句序列。4.2函數(shù)參數(shù)與返回值

4.2.1函數(shù)的參數(shù)

●函數(shù)的參數(shù)分為形參和實(shí)參兩種。

●形參出現(xiàn)在函數(shù)定義中,在整個(gè)函數(shù)體內(nèi)都可以使用,離開該函數(shù)則不能使用。

●實(shí)參出現(xiàn)在主調(diào)中,進(jìn)入被調(diào)函數(shù)后,實(shí)參變量也不能使用?!裥螀⒑蛯?shí)參的功能是作數(shù)據(jù)傳送。發(fā)生函數(shù)調(diào)用時(shí),主調(diào)函數(shù)把實(shí)參的值傳送給被調(diào)函數(shù)的形參(單向值傳遞),從而實(shí)現(xiàn)主調(diào)函數(shù)向被調(diào)函數(shù)的數(shù)據(jù)傳送。形參和實(shí)參特點(diǎn):

(1)形參變量只有在被調(diào)用時(shí)才分配內(nèi)存單元,在調(diào)用結(jié)束時(shí)即刻釋放所分配的內(nèi)存單元。因此形參只有在函數(shù)內(nèi)部有效,函數(shù)調(diào)用結(jié)束返回主調(diào)函數(shù)后,就不能再使用該形參變量。

(2)實(shí)參可以是常量、變量、表達(dá)式、函數(shù)等,無(wú)論實(shí)參是何種類型的量,在進(jìn)行函數(shù)調(diào)用時(shí),它們都必須具有確定的值,以便把這些值傳送給形參。

(3)實(shí)參和形參在數(shù)量上、類型上、順序上應(yīng)嚴(yán)格一致,否則會(huì)發(fā)生“類型不匹配”的錯(cuò)誤。

(4)函數(shù)調(diào)用中發(fā)生的數(shù)據(jù)傳送是單向的,即只能把實(shí)參的值傳送給形參,而不能把形參的值反向地傳送給實(shí)參。因此在函數(shù)調(diào)用過(guò)程中,形參的值發(fā)生改變對(duì)實(shí)參中的值不會(huì)有影響?!纠?.3】函數(shù)調(diào)用舉例。

#include<stdio.h>

main()

{

voids(intn);

intn;

printf(“inputnumber\n”);

scanf(“%d”,&n);

s(n);

printf(“n=%d\n”,n);

}voids(intn){inti;for(i=n-1;i>=1;i--)n=n+i;printf(“n=%d\n”,n);}程序分析:

本程序中定義了一個(gè)函數(shù)s,該函數(shù)的功能是求∑i(i從n-1變到1)的值。在主函數(shù)中輸入n的值(假設(shè)n為100),并作為實(shí)參,在調(diào)用時(shí)傳送給s函數(shù)的形參變量n(注意,本程序的形參變量和實(shí)參變量的標(biāo)識(shí)符都為n,但這是兩個(gè)不同的量,各自有不同的作用域)。在主函數(shù)中用printf語(yǔ)句輸出一次n的值,這個(gè)n的值是實(shí)參n的值。在函數(shù)s中也用printf語(yǔ)句輸出了一次n值,這個(gè)n值是形參最后取得的n值5050。從運(yùn)行情況看,輸入n值為100,即形參n的值變?yōu)?050。返回主函數(shù)之后,輸出實(shí)參n的值仍為100??梢妼?shí)參的值不隨形參的變換而變化。

4.2.2函數(shù)的返回值

函數(shù)的返回值是指函數(shù)被調(diào)用后,執(zhí)行函數(shù)體的程序段所取得并返回給主調(diào)函數(shù)的值。

(1)函數(shù)的值只能通過(guò)return語(yǔ)句返回主調(diào)函數(shù)。

return語(yǔ)句格式為:return(<表達(dá)式>);

(2)return語(yǔ)句功能:

①將表達(dá)式的計(jì)算結(jié)果返回給調(diào)用函數(shù)。

②結(jié)束函數(shù)的執(zhí)行,返回到主調(diào)函數(shù)中繼續(xù)執(zhí)行?!纠?.4】編程序求兩個(gè)浮點(diǎn)數(shù)的積。

floatproduct(floatx,floaty)/*`計(jì)算兩個(gè)浮點(diǎn)數(shù)的積*/

{floats;

s=x*y;

return(s);

}

main()

{floata,b,p;

printf("\npleaseenter(a,b):");/*輸出信息提示*/

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

p=product(a,b);/*調(diào)用函數(shù)product*/

printf("theproductofa,bis:%f\n",p);

}說(shuō)明:

①返回值的類型應(yīng)為定義函數(shù)時(shí)的函數(shù)的類型。若函數(shù)類型與return語(yǔ)句中表達(dá)式值的類型不一致,則以函數(shù)類型為準(zhǔn)進(jìn)行類型轉(zhuǎn)換。例如,如果product函數(shù)為:

doubleproduct(floatx,floaty)/*計(jì)算兩個(gè)浮點(diǎn)數(shù)的積*/

{floats;

s=x*y;

return(s);

}

②沒有返回值的函數(shù),用void定義其函數(shù)類型。否則,函數(shù)即使不用return語(yǔ)句返回值,函數(shù)仍將返回一個(gè)不確定的值。

③如果return語(yǔ)句中沒有返回值,語(yǔ)句格式為:return;

④return語(yǔ)句可以出現(xiàn)多次,但是每次函數(shù)調(diào)用只能有一條 return語(yǔ)句被執(zhí)行。return語(yǔ)句返回值是float類型,而函數(shù)類型為double,則將返回值轉(zhuǎn)換成double類型返回。例如下面的example函數(shù)有三個(gè)return語(yǔ)句,只要其中之一執(zhí)行,函數(shù)就會(huì)結(jié)束。最后一個(gè)return語(yǔ)句中沒有返回值,其功能只是返回調(diào)用函數(shù)。

doubleexample(floatx,floaty)

{floats;

if(x>0&&y>0){s=x/y;return(s);}

if(y==0)return(0);

return;

}

4.3函數(shù)調(diào)用

4.3.1函數(shù)的聲明

在C程序中,函數(shù)可以被調(diào)用需要兩個(gè)前提:

①函數(shù)已存在。系統(tǒng)函數(shù),或用戶已定義完成的函數(shù)。

②對(duì)于庫(kù)函數(shù),在調(diào)用函數(shù)所在文件用include命令包含相應(yīng) 的頭文件即可;

③對(duì)于用戶自定義的函數(shù),除三種情況外都需要在調(diào)用函數(shù)前 對(duì)其進(jìn)行聲明,或者用include命令包含被調(diào)用函數(shù)的所 在文件。

●函數(shù)定義是指編寫不存在的函數(shù),函數(shù)定義只能一次。

●函數(shù)聲明是對(duì)存在的準(zhǔn)備調(diào)用的函數(shù)進(jìn)行聲明,讓編譯系統(tǒng)可以在編譯階段對(duì)函數(shù)的調(diào)用進(jìn)行合法性檢查,判斷形參與實(shí)參的類型及個(gè)數(shù)是否一致,函數(shù)聲明可以多次。

函數(shù)聲明格式:類型標(biāo)識(shí)符函數(shù)名(形式參數(shù)表列);

main()

{floata,b,p;

floatproduct(floatx,floaty);/*函數(shù)聲明,以便本函數(shù)調(diào)用*/

printf("\npleaseenter(a,b):");

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

p=product(a,b);/*調(diào)用函數(shù)product*/

printf("\ntheproductofa,bis:%f",p);

}

floatproduct(floatx,floaty)/*計(jì)算兩個(gè)浮點(diǎn)數(shù)的積*/

{floats;

s=x*y;

return(s);

}下列三種情況下,調(diào)用函數(shù)前可以不對(duì)被調(diào)用函數(shù)進(jìn)行聲明:

①被調(diào)函數(shù)的返回值類型是整型或字符型。

②在函數(shù)的外部已對(duì)該函數(shù)聲明,且聲明在主調(diào)函數(shù)的前面。

floatproduct(floatx,floaty);/*函數(shù)product的聲明語(yǔ)句*/

main()

{floata,b,p;

printf("\npleaseenter(a,b):");

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

p=product(a,b);/*調(diào)用函數(shù)product*/

printf("\ntheproductofa,bis:%f",p);

}

floatproduct(floatx,floaty)/*計(jì)算兩個(gè)浮點(diǎn)數(shù)的積*/

{floats;

s=x*y;

return(s);}

③被調(diào)用函數(shù)的定義和調(diào)用函數(shù)在同一個(gè)文件內(nèi),且出現(xiàn)在調(diào)用函數(shù)之前。

floatproduct(floatx,floaty)/*計(jì)算兩個(gè)浮點(diǎn)數(shù)的積*/

{floats;

s=x*y;

return(s);

}

main()

{floata,b,p;

printf("\npleaseenter(a,b):");/*輸出信息提示*/

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

p=product(a,b);/*調(diào)用函數(shù)product*/

printf("theproductofa,bis:%f\n",p);

}

4.3.2函數(shù)的調(diào)用

函數(shù)的調(diào)用就是調(diào)用函數(shù)通過(guò)數(shù)據(jù)傳遞使用被調(diào)用函數(shù)的功能。

函數(shù)調(diào)用的一般形式是:

函數(shù)名(實(shí)際參數(shù)表列)

說(shuō)明:

①調(diào)用函數(shù)時(shí)的參數(shù)稱為實(shí)際參數(shù),簡(jiǎn)稱實(shí)參。實(shí)參可以是變 量、常量或表達(dá)式,是有確定值的參數(shù)。

②函數(shù)的形參與實(shí)參要求個(gè)數(shù)相等,并且對(duì)應(yīng)的形參和實(shí)參的 類型相同。若被調(diào)函數(shù)是無(wú)參函數(shù),則實(shí)參表列為空。

③數(shù)據(jù)傳遞是通過(guò)形參接收實(shí)參的數(shù)值完成的。函數(shù)調(diào)用時(shí), 形參被分配內(nèi)存單元,并接收對(duì)應(yīng)實(shí)參傳來(lái)的值。#include“stdio.h”

voidstart_information()

{printf(“Theprogrambegin!\n”);

}

voidend_information()

{printf(“Theprogramend!\n”);

}

floatsort(floatx1,floatx2,floatx3)

{floatt;

printf(“x1=%6.2fx2=%6.2fx3=%6.2f\n”,x1,x2,x3);

if(x1>x2){t=x1;x1=x2;x2=t;}

if(x1>x3){t=x1;x1=x3;x3=t;}

if(x2>x3){t=x2;x2=x3;x3=t;}

printf("x1=%6.2fx2=%6.2fx3=%6.2f\n",x1,x2,x3);

return(x3+x2+x1);

}

main(){floata,sum;start_information();printf("pleaseenterdata(a):");scanf("%f",&a);sum=sort(a+1,3.0,a);printf("sumis%6.2f\n", sum);end_information();}【例4.7】將三個(gè)實(shí)數(shù)按由小到大順序輸出。一般函數(shù)的三種調(diào)用方式:

①具有返回值的函數(shù)參加表達(dá)式的計(jì)算。例如語(yǔ)句 t=max(x,y)+10;

②具有返回值的函數(shù)作為其他函數(shù)的實(shí)參。例如語(yǔ)句 printf(“\nthemaximumis:%f”,max(t,z));

③沒有返回值的函數(shù)單獨(dú)成為一個(gè)語(yǔ)句,例如語(yǔ)句:

end_information();

【例4.8】函數(shù)調(diào)用方式。

floatmax(floatx,floaty)/*返回兩個(gè)數(shù)中較大的值*/

{if(x>y)return(x);elsereturn(y);

}

voidend_information()

{printf(“Theprogramend!\n”);

}

main()

{floatx,y,z,t;

printf("pleaseenterxyz:");/*輸出信息提示輸入三個(gè)實(shí)數(shù)*/

scanf("%f%f%f",&x,&y,&z);

t=max(x,y)+10;

printf("themaximumis:%f\n",max(t,z));

end_information();

}4.3.3函數(shù)調(diào)用的數(shù)據(jù)傳遞方式

●C語(yǔ)言中,只能將實(shí)參的值傳遞給形參,形參值的 變化不影響實(shí)際參數(shù)。稱為單向值傳遞。

●調(diào)用函數(shù)時(shí),給形參分配內(nèi)存單元,將實(shí)參的值賦給形式參數(shù)。

●函數(shù)執(zhí)行完后,形參占用的空間被釋放,實(shí)參仍為調(diào)用前的值。

【例4.10】注意程序運(yùn)行結(jié)果。voidchange(intx,inty){printf("x=%d,y=%d\n",x,y);

x=100;y=200;printf("x=%d,y=%d\n",x,y);}

main(){inta,b;printf("\npleaseenter data(a,b):");scanf("%d%d",&a,&b);printf("a=%d,b=%d\n",a,b);change(a,b);printf("a=%d,b=%d\n",a,b);}在輸入3、4時(shí),程序的運(yùn)行結(jié)果為:pleaseenterdata(a,b):34↙a=3,b=4x=3,y=4x=100,y=200a=3,b=4

例4.10中main函數(shù)調(diào)用函數(shù)change時(shí),系統(tǒng)給形參x、y分配空間,將實(shí)參a的值賦給形參x,實(shí)參b的值賦給形參y。執(zhí)行change函數(shù)時(shí),x、y重新被賦值。change函數(shù)執(zhí)行完x、y占用的空間被釋放。形參x、y的變化影響不到實(shí)參a、b,因此main函數(shù)內(nèi)輸出為“a=3,b=4”。4.4函數(shù)的嵌套調(diào)用

4.4.1函數(shù)的嵌套調(diào)用

C語(yǔ)言中,函數(shù)不允許嵌套定義,但可以嵌套調(diào)用?!纠?.11】求兩個(gè)整數(shù)的最小公倍數(shù)。intdivisor(intx,inty)/*求整數(shù)x、y的最大公約數(shù)*/{

intm;

if(x<y){m=x;x=y;y=m;}while((m=x%y)!=0){x=y;y=m;}return(y);}

intmultiple(intx,inty)/*求整數(shù)x、y的最小公倍數(shù)*/{intm;m=x*y/divisor(x,y);return(m);}

main(){intx,y,z;

printf("\npleaseenterxy:");scanf("%d%d",&x,&y);z=multiple(x,y);/*調(diào)用函數(shù)multiple 求x、y的最小公倍數(shù)*/printf("theminimumcommonmultiple: %d",z);}

例4.11的程序運(yùn)行過(guò)程如圖4.1所示。從main函數(shù)開始執(zhí)行,輸入兩個(gè)整數(shù)后調(diào)用multiple函數(shù),multiple函數(shù)用調(diào)用了divisor函數(shù)。divisor函數(shù)執(zhí)行完返回multiple函數(shù)執(zhí)行,multiple函數(shù)執(zhí)行完返回main函數(shù)執(zhí)行。main函數(shù)執(zhí)行完,程序執(zhí)行結(jié)束。voidf3()

{printf("functionf3begin.\n");

printf("functionf3end.\n");

}

voidf2()

{printf("functionf2begin.\n");

f3();

printf("functionf2end.\n");

}

voidf1()

{printf("functionf1begin.\n");

f2();

f3();

printf("functionf1end.\n");

}

main(){printf("\nfunctionmainbegin.\n");f1();printf("functionmainend. \n");}

functionmainbegin.functionf1begin.

functionf2begin.

functionf3begin.functionf3end.

functionf2end.

functionf3begin.functionf3end.functionf1end.functionmainend.【例4.12】請(qǐng)分析下列程序的輸出結(jié)果,體會(huì)函數(shù)嵌套調(diào)用的關(guān)系。4.4.2函數(shù)的遞歸調(diào)用

●函數(shù)可以直接或間接的調(diào)用自身,這種調(diào)用方式稱為函數(shù) 的遞歸調(diào)用。

●注意,雖然遞歸是直接或間接的調(diào)用自身,但和調(diào)用其他 函數(shù)一樣每次被調(diào)用都需要重新開辟空間,并不共用 同一內(nèi)存空間。因此調(diào)用自身和調(diào)用其他函數(shù)的調(diào)用 過(guò)程無(wú)區(qū)別?!纠?.13】直接遞歸調(diào)用。

voidfun()

{printf("functionfunbegin.\n");

fun();

printf("functionfunend.\n");

}

【例4.14】間接遞歸調(diào)用。voidf1(){printf("functionf1begin.\n");f2(),printf("functionf1end.\n");}voidf2(){printf("functionf2begin.\n");f1();printf("functionf2end.\n");}

例4.13和例4.14的遞歸調(diào)用是無(wú)休止的自身調(diào)用。顯然無(wú)休止的調(diào)用是不合理的,也是不允許的。合理的遞歸調(diào)用應(yīng)是有限的,是在一定條件能停止的遞歸調(diào)用?!纠?.15】求n!的遞歸程序。

longfac(intx)/*遞歸函數(shù),求x!*/

{if(x<0)return(-1);/*無(wú)法計(jì)算階乘返回-1*/

elseif(x==1||x==0)return(1);/*返回終結(jié)條件下的值*/

elsereturn(x*fac(x-1));/*遞歸調(diào)用函數(shù)自身*/

}

main()

{intn;

printf("pleaseenterintegern:");

scanf("%d",&n);

printf("n!=%ld\n",fac(n));

}

main()fac(3)fac(2)fac(1)

輸入n

調(diào)用fac函數(shù)求3! 計(jì)算3*fac(2)計(jì)算2*fac(1)1!=1

輸出3!結(jié)束返回fact(3)=6

溫馨提示

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

評(píng)論

0/150

提交評(píng)論