C語言程序設(shè)計課件:函數(shù)_第1頁
C語言程序設(shè)計課件:函數(shù)_第2頁
C語言程序設(shè)計課件:函數(shù)_第3頁
C語言程序設(shè)計課件:函數(shù)_第4頁
C語言程序設(shè)計課件:函數(shù)_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

函數(shù)—C語言程序設(shè)計目錄contentC語言程序結(jié)構(gòu)及模塊化設(shè)計1C語言函數(shù)的定義、原型和調(diào)用2變量的存儲類型3函數(shù)間的數(shù)據(jù)傳遞4遞歸函數(shù)54.1C語言程序結(jié)構(gòu)及模塊化設(shè)計

開發(fā)一些比較復(fù)雜的軟件時,結(jié)構(gòu)化的開發(fā)方法是常采用的方法,基本要點是:

基本思想:把一個復(fù)雜問題的求解過程分階段進行,每個階段

處理的問題都控制在人們?nèi)菀桌斫夂吞幚淼姆秶?/p>

自頂向下

逐步求精

模塊化設(shè)計

4.1.1結(jié)構(gòu)化軟件及其優(yōu)越性模塊化軟件示意圖矩形框:功能模塊箭頭:模塊間的調(diào)用關(guān)系(箭頭指向的是被調(diào)用模塊)

4.1.1結(jié)構(gòu)化軟件及其優(yōu)越性“工資計算程序”的自頂向下開發(fā)有效地控制了程序設(shè)計的復(fù)雜性大大提高軟件的可靠性大幅度縮短開發(fā)周期避免程序開發(fā)的重復(fù)勞動,有效提高軟件開發(fā)效率良好的可維護性4.1.1結(jié)構(gòu)化軟件及其優(yōu)越性從軟件工程上看,可靠性、效率、可維護性是軟件質(zhì)量的主要評價指標。因此,模塊化軟件能夠成為高質(zhì)量的軟件。函數(shù)的調(diào)用關(guān)系4.1.2C語言程序的結(jié)構(gòu)有且僅有一個函數(shù)稱為主函數(shù)main()函數(shù)調(diào)用語句程序的執(zhí)行總是從主函數(shù)開始。主函數(shù)中的所有語句按先后順序執(zhí)行完,則程序執(zhí)行結(jié)束。4.2C語言函數(shù)的定義、原型和調(diào)用<存儲類型><數(shù)據(jù)類型>函數(shù)名(<形式參數(shù)及說明>){

說明語句;

執(zhí)行語句;}函數(shù)的定義:即編寫完成函數(shù)功能的程序塊。函數(shù)頭函數(shù)體函數(shù)定義的一般格式是:4.2.1函數(shù)的定義函數(shù)定義的幾點說明:(1)

函數(shù)的存儲類型說明只有static(靜態(tài))和extern(外部)兩種。存

儲類型為static時,對函數(shù)的調(diào)用局限于所在文件;存儲類型為 extern時,可省略,表示此函數(shù)是外部函數(shù),可供其他文件調(diào)用。(2)函數(shù)的數(shù)據(jù)類型是函數(shù)返回值的數(shù)據(jù)類型,可以是各種基本數(shù)據(jù)類

型(char、int、double等)和復(fù)雜數(shù)據(jù)類型,包括指針類型和結(jié)構(gòu)

體。當(dāng)函數(shù)的數(shù)據(jù)類型為int時,可省略。當(dāng)函數(shù)不需要返回值時,

將函數(shù)的數(shù)據(jù)類型指定為void。(3)函數(shù)名與變量名一樣也是標識符的一種,與變量名命名規(guī)則類似,最

好“見名知意”。由圓括號包圍的部分稱為參數(shù)表,也稱形式參數(shù)

表,簡稱形參表。(4)由大括號括起來的程序部分稱為函數(shù)體。4.2.2函數(shù)的調(diào)用1、

函數(shù)的執(zhí)行過程

在一個函數(shù)中調(diào)用另一個函數(shù)時,程序控制就從調(diào)用函數(shù)中轉(zhuǎn)移到被調(diào)用函數(shù),并且從被調(diào)用函數(shù)的函數(shù)體起始位置開始執(zhí)行該函數(shù)的語句。在執(zhí)行完函數(shù)體中的所有語句,或者遇到return語句時,程序控制就返回調(diào)用函數(shù)中原來的斷點位置繼續(xù)執(zhí)行。4.2.2函數(shù)的調(diào)用2、函數(shù)的原型(也稱函數(shù)聲明)在一個函數(shù)中調(diào)用另外一個函數(shù)(即被調(diào)用的函數(shù))需要具備下列條件:(1)被調(diào)用的函數(shù)必須是已經(jīng)存在的函數(shù)(是庫函數(shù)或用戶自己定義的函數(shù))。(2)如果使用庫函數(shù),在本文件的開頭用#include命令將調(diào)用有關(guān)函數(shù)時所需

要的信息“包含”到本文件中來;如果調(diào)用的是用戶自己定義的函數(shù),在

主調(diào)函數(shù)所在文件中,對被調(diào)用函數(shù)進行聲明。在C語言中,函數(shù)原型的一般形式為:(1)函數(shù)數(shù)據(jù)類型函數(shù)名(參數(shù)類型1,參數(shù)類型2........);(2)函數(shù)數(shù)據(jù)類型函數(shù)名(參數(shù)類型1參數(shù)名1,參數(shù)類型2參數(shù)名2........);4.2.2函數(shù)的調(diào)用3、函數(shù)調(diào)用時參數(shù)的使用在調(diào)用一個函數(shù)時,必須使用具有實際量的值作為函數(shù)的參數(shù),這時函數(shù)的參數(shù)稱為實參數(shù)。(1)實參數(shù)的個數(shù)和順序必須與函數(shù)定義的形式參數(shù)保持一致;(2)實參數(shù)據(jù)類型必須和相應(yīng)的形式參數(shù)相同??梢赃@樣認為:實

參的值是形參初始化的初值。4.2.2函數(shù)的調(diào)用4、函數(shù)調(diào)用的方式凡是已定義的函數(shù)就可以用如下格式直接調(diào)用它:源程序中可出現(xiàn)以下三種函數(shù)調(diào)用方式:(1)

函數(shù)調(diào)用語句(2)

函數(shù)表達式(3)

作為函數(shù)的實參函數(shù)原型:voiddelay(unsignedt);調(diào)用語句:delay(600000);v=volume(3,4,5); c=2*max(a,b);m=max(a,max(b,c));函數(shù)名(實參表);其中max(b,c)是第一次函數(shù)調(diào)用,它的返回值作為max()第二次調(diào)用的實參。m的值取a,b,c中最大值。4.2.3參數(shù)數(shù)目可變的函數(shù) C語言中可以定義參數(shù)數(shù)目可變的函數(shù)。定義參數(shù)數(shù)目可變的函數(shù)時,必須至少明確說明一個形參;在列出的最后一個形參后面用省略符(.....)來說明該函數(shù)的參數(shù)數(shù)目可變。例如: 函數(shù)原型:intprintf(char*format,…..);

調(diào)用形式:printf(格式化字符串,輸出參數(shù)1,輸出參數(shù)2.,....,

輸出參數(shù)n);4.3變量的存儲類型C語言中的變量具有兩種屬性:(1)根據(jù)變量所持有數(shù)據(jù)的性質(zhì)不同而分為各種數(shù)據(jù)類型。(2)根據(jù)變量的存儲方式不同而分為各種存儲類型。

變量的數(shù)據(jù)類型決定了該變量所占內(nèi)存單元的大小及形式;變量的存儲類型規(guī)定了該變量所在的存儲區(qū)域,因而規(guī)定了該變量作用時間的長短,即壽命的長短,這種性質(zhì)又稱為"存在性"。

變量在程序中說明的位置決定了該變量的作用域,即在什么范圍內(nèi)可以引用該變量,"可引用"又稱為"可見",所以這種性質(zhì)又稱為"可見性"。作用域:是該變量可訪問的程序部分。變量的生存期:變量從定義開始到它所占有的存儲空間被系統(tǒng)收回為止的這段時間。變量的可見性:在某個程序區(qū)域,可以對變量進行訪問(或稱存取)操作,則稱該變量在該區(qū)域為可見的,否則為不可見的。全局變量和局部變量:在一個函數(shù)內(nèi)部或復(fù)合語句內(nèi)部定義的變量叫內(nèi)部變量,又稱為"局部變量"。在函數(shù)外定義的變量稱為外部變量,又稱為"全局變量"。4.3.1——幾個基本概念動態(tài)存儲變量和靜態(tài)存儲變量在程序運行期間,所有的變量均需占有內(nèi)存,有的是臨時占用內(nèi)存,有的是整個程序運行過程中從頭到尾占用內(nèi)存。對于在程序運行期間根據(jù)需要進行臨時動態(tài)分配存儲空間的變量稱為“動態(tài)存儲變量”,對于在程序運行期間永久性占用內(nèi)存的變量稱為“靜態(tài)存儲變量"。4.3.1——幾個基本概念一個正在運行的程序可將其使用內(nèi)存的情況分為如下三類:

程序代碼區(qū):程序的指令代碼存放在程序代碼區(qū)。

靜態(tài)存儲區(qū):靜態(tài)存儲變量存放區(qū),包括全局變量。

動態(tài)存儲區(qū):存放局部自動變量,函數(shù)的形參以及函數(shù)調(diào)用時的現(xiàn)場保護和返回地址等。4.3.1——使用內(nèi)存的情況變量定義的一般形式為:<存儲類型>數(shù)據(jù)類型變量名表;

存儲類型包括:auto自動型register寄存器型extern外部參照型static靜態(tài)型4.3.1——變量定義與存儲類型1.自動變量用關(guān)鍵字auto進行存儲類型聲明4.3.2自動型變量voidmain{ autointx,y; autofloatz; ……..}

(1)(2)if(x!=y){inti;for(i=0;i<10;i++){intj;……}}

在主函數(shù)內(nèi)定義了自動型int變量x,y和自動型float變量z,在函數(shù)內(nèi)或復(fù)合語句中定義自動型變量時auto可缺省在條件判斷后的那個復(fù)合語句中定義了一個自動型int變量i,在for循環(huán)后的那個復(fù)合語句中定義了一個自動型int變量j2.

作用域及壽命

由于自動型變量只能作內(nèi)部變量,所以自動變量只在定義它的函數(shù)或復(fù)合語句內(nèi)有效,即“局部可見”。變量的作用域是指該程序中可以使用該變量名字的范圍。對于在函數(shù)開頭聲明的自動變量來說,其作用域是聲明該變量的函數(shù)。不同函數(shù)中聲明的具有相同名字的各個局部變量之間沒有任何關(guān)系。函數(shù)的參數(shù)也是這樣的,實際上可以將它看作是局部變量。

4.3.2自動型變量4.3.2自動型變量#include<stdio.h>voidmain(){intx=5;//auto缺省……….(1)printf("x=%d\t",x);if(x>0){intx=10;//auto缺省…(2)printf("x=%d\t",x);}printf("x=%d\n",x+2);}例4.1自動型變量的作用域

運行結(jié)果:

x=5x=10x=7#include<stdio.h>voidfunc();voidfunc(){ autointa=0; printf("aoffunc()=%d\n",++a);}voidmain(){ inta=10; func(); printf("aofmain()=%d\n",++a); func(); func();}4.3.2自動型變量例4.2下面的例子說明了自動變量的特性

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

運行結(jié)果:

aoffunc()=1 aofmain()=11 aoffunc()=1 aoffunc()=14.3.2自動型變量#include<stdio.h>intn;voidshow();voidshow(){autointi=3;n++;i++;printf("inputthevalue:n=%di=%d\n",n,i);{autointi=10;i++;printf("nowthevaluei=%d\n",i);}printf("thenthevaluei=%d\n",i);}voidmain(){autointi;autointn=1;printf("atfirstn=%d\n",n);for(i=1;i<3;i++){show();}printf("atlastn=%d",n);}

運行結(jié)果:atfirstn=1inputthevalue:n=1i=4nowthevaluei=11thenthevaluei=4inputthevalue:n=2i=4nowthevaluei=11thenthevaluei=4atlastn=1

例4.3下面的程序說明自動變量的初始化和作用域1.定義寄存器型變量在函數(shù)內(nèi)或復(fù)合語句內(nèi)定義,例如:寄存器型變量存儲在CPU的通用寄存器中,因為數(shù)據(jù)在寄存器中操作比在內(nèi)存中快得多,因此通常把程序中使用頻率最高的少數(shù)幾個變量定義為register型,目的是提高運行速度,從而節(jié)省了大量的時間,大大加快了程序的運行速度。voidmain(){registerinti;for(i=0;i=<100;i++){………}}4.3.3寄存器型變量

4.3.3寄存器型變量2.分配寄存器的條件(1)有空閑的寄存器;(2)變量所表示的數(shù)據(jù)的長度不超過寄存器的位長;3.作用域和壽命作用域和壽命同auto類型,也是在定義它的函數(shù)或復(fù)合語句內(nèi)有效,即"局部可見"。

4.3.3寄存器型變量

#include<stdio.h>#defineT10000voiddelay1();voiddelay2();voiddelay1(){registerunsignedi=0;for(;i<T;i++){}}voiddelay2(){unsignedi;for(i=1;i<T;i++){}}

voidmain(){unsignedinti;printf("\a調(diào)用delay1()第一次延時!\n");for(i=0;i<60000;i++){delay1();}printf(“\a第1次延時結(jié)束!\n調(diào)用delay2()第2次延時!\n");for(i=0;i<60000;i++){delay2();}printf("\a第2次延時結(jié)束!\n");}運行結(jié)果:調(diào)用delay1()第一次延時!第1次延時結(jié)束!調(diào)用delay2()第2次延時!第2次延時結(jié)束!

例4.4用寄存器變量提高程序執(zhí)行速度函數(shù)的形參也可以指定為寄存器變量,一個函數(shù)一般以擁有2個寄存器變量為宜4.3.4外部參照型變量[extern]1.定義: extern型變量一般用于在程序的多個編譯單位之傳送數(shù)據(jù),在這種情況下指定為extern型的變量是其它編譯單位的源程序中定義的,它的存儲空間在靜態(tài)數(shù)據(jù)區(qū),在程序執(zhí)行過程中長期占用空間。要訪問另一個文件中定義的跨文件作用域的全局變量,必須進行extern說明。2.作用域及壽命:

?全局存在,全局可見?

/*file1.c*/externintx;voidmain(){x++;}/*file2.c*/externintx;voidfun1(){x+=3;}/*file3.c*/intx=0;voidfun2(){printf("%d",x);} file1.c和file2.c中的externintx;告訴編譯程序X是外部參照變量,應(yīng)在本文件之外去尋找它的定義。所以上面的x雖在兩個源文件中,但它們是同一個變量。在文件之外的file3.c中,定義了intx=0,即為它們調(diào)用的變量。4.3.4外部參照型變量[extern]#include<stdio.h>intn=100;voidhanshu();voidhanshu(void){n-=20;}intmain(void){printf("n=%d\n",n);for(;n>=60;){hanshu();printf("n=%d\n",n);}return0;}例4.5說明了外部變量的特性4.3.4外部參照型變量[extern]

運行結(jié)果:

n=100n=80n=60n=40例4.6用extern聲明外部變量本程序的作用是給定b的值,輸入a和m,求a*b,和a的值。4.3.4外部參照型變量[extern]文件file1.c中的內(nèi)容為:#include<stdio.h>inta;intm;intpower();voidmain(){intb=3,c,d;printf(“inputthenumberaandits\powerm:\n");scanf("%d,%d",&a,&m);c=a*b;printf("%d*%d=%d\n",a,b,c);d=power();printf("%d**%d=%d",a,m,d);}文件file2.c中的內(nèi)容為:externinta;externintm;intpower();{inti,y=1;for(i=1;i<=m;i++){y*=a;}return(y);}

運行結(jié)果:

inputthenumberaanditspowerm: 5,4//輸入 5*3=15//輸出 5**4=6254.3.5靜態(tài)型變量[static]1.定義靜態(tài)型變量既可以在函數(shù)或復(fù)合語句內(nèi)進行,也可以在所有函數(shù)之外進行。在函數(shù)或復(fù)合語句內(nèi)部定義的靜態(tài)變量稱為局部靜態(tài)變量,在函數(shù)外定義的靜態(tài)變量稱為全局靜態(tài)變量。staticfloatx;/*定義x全局靜態(tài)變量*/voidmain(){staticinty;/*定義y局部靜態(tài)變量*/……}2.作用域和壽命static類型變量

全局壽命全局static變量

全局可見局部static變量

局部可見例4.7考察靜態(tài)變量的值4.3.5靜態(tài)型變量[static]#include<stdio.h>inta=2;intf();intf(){autointb=0;staticintc=3;b++;c++;return(a+b+c);}voidmain(){inti;for(i=0;i<3;i++){printf("%d\t",f());}}

運行結(jié)果:789例4.8說明外部靜態(tài)變量和外部變量的區(qū)別4.3.5靜態(tài)型變量[static]文件file1.c如下:#include<stdio.h>staticfloatx;floaty;floatf2();floatf1();floatf1(){return(x*x);}voidmain(){x=500;y=100;printf(“f1=%f,\nf2=%f\n",f1(),f2());}文件file2.c如下:externfloaty;floatf2(){return(y*y);}

運行結(jié)果:

fl=250000.000000,f2=10000.000000例4.8局部靜態(tài)變量與自動變量的區(qū)別4.3.5靜態(tài)型變量[static]#include<stdio.h>voidvalue();voidvalue(){intau=0;staticintst=0;printf("au_variable=%d,st_variable=%d\n",au,st);au++;st++;}voidmain(){inti;for(i=0;i<3;i++){value();}}

運行結(jié)果:au_variable=0,st_variable=0au_variable=0,st_variable=1au_variable=0,st_variable=24.4函數(shù)間的數(shù)據(jù)傳遞C程序是由若干個相對獨立的函數(shù)組成的,但是各個函數(shù)處理的往往是同一批數(shù)據(jù)。所以說程序中的函數(shù)雖然是離散的,但被處理的數(shù)據(jù)卻是連續(xù)的(數(shù)據(jù)常常貫穿若干函數(shù)中連續(xù)流動)。因此,在程序運行期間,函數(shù)之間必然存在著數(shù)據(jù)的相互傳遞過程。使用函數(shù)參數(shù)在函數(shù)間傳遞數(shù)據(jù)使用返回值傳遞數(shù)據(jù)使用全局變量傳遞數(shù)據(jù)函數(shù)間數(shù)據(jù)傳遞實現(xiàn)的方法:4.4.1使用函數(shù)參數(shù)在函數(shù)間傳遞數(shù)據(jù)

在一個函數(shù)中調(diào)用另一個函數(shù)時,實參數(shù)的值傳遞到形式參數(shù)中,這樣就實現(xiàn)了把數(shù)據(jù)由調(diào)用函數(shù)傳遞給被調(diào)用函數(shù)。在使用參數(shù)傳遞數(shù)據(jù)時,可以采用兩種不同的方式:值傳遞

地址傳遞。

使用值傳遞方式調(diào)用時,實參可以是常量、已經(jīng)賦值的變量或表達式值,甚至是另一個函數(shù),只要它們有一個確定的值,被調(diào)用函數(shù)的形參就可以使用變量來接收實參的值。1、函數(shù)調(diào)用的值傳遞采用這種方式時,每個參數(shù)只能傳遞一個數(shù)據(jù)。所以,當(dāng)需要傳遞的數(shù)據(jù)較多時,一般不采以這種方式,而采用地址傳遞方式。#include<stdio.h>intcomp(intx,inty);voidmain(){inta=10,b=20;printf("%d\n",comp(a,b));printf("%d\n",comp(30,b));}intcomp(intx,inty)

{if(x>y)return1;elseif(x<y)return-1;elsereturn0;}函數(shù)原型的聲明采用值傳遞方式在函數(shù)間傳遞數(shù)據(jù)

運行結(jié)果:-114.4.1使用函數(shù)參數(shù)在函數(shù)間傳遞數(shù)據(jù)例4.10比較兩個整數(shù)的大小數(shù)據(jù)復(fù)制方式傳遞數(shù)據(jù)的特點:

數(shù)據(jù)在傳遞方和被傳遞方占用不同的內(nèi)存空間,被傳遞數(shù)據(jù)在被調(diào)用的函數(shù)中無論如何變化,都不會影響該數(shù)據(jù)在調(diào)用函數(shù)中的值。4.4.1使用函數(shù)參數(shù)在函數(shù)間傳遞數(shù)據(jù)例

實現(xiàn)兩個整數(shù)的交換#include”stdio.h”voidmain(){ inta=3,b=5;

printf(”a=%d, b=%d\n”,a,b); swap(a,b);

printf(”a=%d, b=%d\n”,a,b);}voidswap(inta,intb){ inttemp; temp=a; a=b; b=temp;}交換a,b的值運行結(jié)果: a=3,b=5 a=3,b=5 ?參數(shù)傳遞的不是數(shù)據(jù)本身,而是數(shù)據(jù)的存儲地址。變量的地址作為參數(shù)調(diào)用一個函數(shù),而被調(diào)用函數(shù)的形式參數(shù)必須是可以接收地址值的指針變量,并且它的數(shù)據(jù)類型必須與被傳遞數(shù)據(jù)的數(shù)據(jù)類型相同。把變量的地址傳遞給被調(diào)函數(shù),被調(diào)函數(shù)通過這個地址找到該變量的存放位置,直接對該地址中存放的變量的內(nèi)容進行存取操作。因此,在被調(diào)函數(shù)中若修改了地址中的內(nèi)容,實際上修改了實參的值。如果想讓形參的改變影響實參,即函數(shù)返回時需要獲得幾個結(jié)果值,應(yīng)采用地址傳遞方式。4.4.1使用函數(shù)參數(shù)在函數(shù)間傳遞數(shù)據(jù)2、地址傳送方式傳遞數(shù)據(jù)例4.11對三個整數(shù)a,b,c進行從小到大的排序#include<stdio.h>voidswap(int*x,int*y);voidmain(){inta,b,c;scanf("%d%d%d",&a,&b,&c);if(a>b) swap(&a,&b); if(a>c) swap(&a,&c);if(b>c) swap(&b,&c);printf("%d\t%d\t%d\n",a,b,c);}voidswap(int*x,int*y){inttemp;temp=*x;

*x=*y; *y=temp;

return;}運行結(jié)果: 5,4,8 //輸入 458 //輸出采取傳地址的方式傳遞數(shù)據(jù)4.4.1使用函數(shù)參數(shù)在函數(shù)間傳遞數(shù)據(jù)4.4.2使用返回值傳遞數(shù)據(jù)

函數(shù)被調(diào)用后可以向調(diào)用它的函數(shù)返回一個返回值。返回值通過函數(shù)中使用return語句實現(xiàn):return語句只能把一個返回值傳遞給調(diào)用函數(shù),當(dāng)要求返回的值多于一個時不能使用返回值傳遞。當(dāng)返回值是數(shù)值,調(diào)用函數(shù)需要使用和返回值具有相同數(shù)據(jù)類型的變量接收該返回值;而當(dāng)返回值是地址值,應(yīng)使用指針接收。return(表達式);功能:把程序控制從被調(diào)用函數(shù)返回調(diào)用函數(shù)中,同時把返回值帶給

調(diào)用函數(shù)。例4.13冪函數(shù)的使用冪函數(shù)的功能是計算x的n次方。該函數(shù)用形式參數(shù)接收x和n的值,計算結(jié)果使用return語句傳遞給調(diào)用它的函數(shù)中4.4.2使用返回值傳遞數(shù)據(jù)intpower(intx,intn){intp;for(p=1;n>0;--n)p=p*x;return(p);}使用返回值傳遞數(shù)據(jù)

在return語句可以不帶表達式部分,即:return;

這種情況下,它僅實現(xiàn)程序控制的轉(zhuǎn)移,程序從被調(diào)函數(shù)返回主調(diào)函數(shù),而不傳遞任何返回值。

C語言的函數(shù)中不是必需要有return語句,沒有return語句的C函數(shù),程序控制到達包圍函數(shù)的下面大括號}時,自動返回調(diào)用函數(shù)。例4.14符號函數(shù)的使用函數(shù)中可以根據(jù)需要

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論