C語言程序設計課件-第2章數據類型運算符表達式_第1頁
C語言程序設計課件-第2章數據類型運算符表達式_第2頁
C語言程序設計課件-第2章數據類型運算符表達式_第3頁
C語言程序設計課件-第2章數據類型運算符表達式_第4頁
C語言程序設計課件-第2章數據類型運算符表達式_第5頁
已閱讀5頁,還剩57頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第2章

數據類型、運算符及表達式在C語言中,為解決問題,要采用各種類型的數據,數據的類型不同,它所表達的數據范圍、精度和所占據的存儲空間均不相同,本章主要討C語言的3種基本數據類型:整型、浮點型、字符型。

2.1

c語言的數據類型幾種聚合類型:

數組指針結構體共用體、位域和枚舉五種基本數據類型:

字符型整型單精度實型雙精度實型空類型基本數據類型

數據類型基本類型構造類型指針類型空類型整型實型字符型數組類型結構體類型共用體類型枚舉類型

雙精度型單精度型基本類型的前面可以有各種修飾符:

修飾符用來改變基本類型的意義,以便更準確地適應各種情況的需求。

signed(有符號)

unsigned(無符號)

long(長型符)short(短型符)2.2常量的概念

程序運行過程中其值不能被改變的量稱為常量。

2.2.1整型常量

也叫整常數,是由一個或多個數字所組成的,可以有正負號。C整型常量可以用十進制整數、八進制整數和十六進制整數三種不同的形式表示。

1)十進制整數。如:215,-236,0等。

2)八進制整數。如:04,-016,0237等(分別代表十進制數4,-14,159)。

以數字0開頭,以區別于十進制數。

3)十六進制整數。如:0x123,-0x1fa,0x64等(分別代表十進制數291,-506,100)。

以數字0加小寫(或大寫)字母x開頭。

2.2.2實型常量

又稱實數或浮點數。C實型常量只使用十進制,它有兩種表示形式:

1)十進制形式。如:0.235,.235,-23.5,0.0,45.237等都 是十進制形式的實數。

2)指數形式。如:-1.254E-3表示-1.254×10-3 0.123e5表示0.123×105

說明:實型常量不分float型和double型。如果實型常量跟有后綴f或F,則被當作float型,否則C語言編譯系統總是將其處理成雙精度型。一個實型常量可以賦給一個實型變量(float型或double型)

2.2.3字符型常量

1.定義

用一對單引號括起來的單個字符,稱為字符常量。例如: ‘a’、‘A’、‘1’、‘+’

字符常量具有值,它的值就是該字符的ASCII代碼,在內存中占一個字節。如:

c=‘A’與c=65這兩個賦值語句是相同的。2.轉義字符----以反斜杠“\”開頭的轉義字符,將反斜杠“\”后面的字符轉變為另外一種含義。使用這種方法可以表示任何輸出的字母字符、專用字符、控制字符和圖形字符。轉義字符功能ASCII記號\a響鈴BEL\b退一格BS\ddd1~3位八進制數所代表的ASCII字符ddd\f走紙換頁FF\n換行NL(NF)\r回車(不換行)CR\t橫向跳到下一個輸出區HT\v豎向跳格VT\xhh1~2位十六進制數所代表的ASCII字符hh\\反斜杠字符\\’單引號字符’\”雙引號字符”\?問號字符?\0空Null例2-1用轉義字符輸出可打印字符和不可打印字符。

main()

printf(“please\t\H\n”);

程序運行結果如下:

please□□H

2.2.4字符串常量

1.字符串常量的定義

●字符串常量是用一對雙引號括起來的字符序列。

●字符串中字符的個數稱為字符串長度。

▼長度為0的字符串(即一個字符都沒有的字符 串)稱為空串,表示為””(一對緊連的雙引號)。

▼空格也是一個字符,長度為1。

例如:”Howareyou.”長度為12

”Goodmorning.”長度為13。

●如果反斜杠和雙引號作為字符串中的有效字符,則必須 使用轉義字符。

例如:C:\msdos\v6.22→“\\C:msdos\\v6.22”

Isay:“Iamastudent.”→

“Isay:\”Iamastudent.\””

2.字符串的存儲

C語言規定:存儲字符串常量時,由系統在字符串的末尾自動加一個‘\0’作為字符串的結束標志。

如字符串”CHINA”在內存中的實際存儲:

CHINA\0提示:

字符常量‵a′與字符串常量“a“的不同之處:

(1)定界符不同:字符常量使用單引號,而字符串常量使用雙 引號;

(2)長度不同:字符常量的長度為1,而字符串常量的長度,可 以是0,也可以是某個整數;

(3)存儲要求不同:字符常量存儲字符的ASCII碼值,而字符串 常量,除了要存儲有效的字符外,還要存儲結束標志符 "\0"。2.3變量

變量----其值可以改變的量稱為變量。

變量的標識符----一個變量由一個名字來標識,此名字稱為該 變量的標識符(應盡可能以有意義的名字來標識變量, 以增加程序的易讀性)。

變量的存儲單元----存儲單元中存放變量的值。

變量的地址----存儲單元的地址。

注意:變量名、變量值和變量的地址是三個不同的概念,變量 名與內存中的某一存儲單元相聯系,經過編譯后變量名 都用變量地址代替;而變量值是指存放在該存儲單元中 的數據的值。同一個變量名對應的變量在不同的時刻可 以有不同的值。

35a

圖2-1不同時刻變量的存儲單元存儲不同的值a補講標識符

(1)字符集

C語言的字符集是指C程序中允許出現的字符,分為以下幾類:

英文字母(大、小寫):A,B,C,…,Z;a,b,c,…,z

數字:0,1,2,…,9

特殊字符:+,

,*,/,%,=,_,(,)~,!,◎,#,$,^,&,[,],\,.,

,“,{,},?,|以及空格等

轉義字符:\n,\t,\v,\b,\r,\f,\a,\“,\

,\\,\ddd,\xhh等

(2)標識符

C語言中各種對象的名字。由字母(a-z,A-Z)、數字(0-9)和下劃線(_)組成,并且第一個字符必須為字母或下劃線。標識符包括:符號常量名、變量名、函數名、類型名、文件名。例如,合法的標識符和變量名:

data1,Day,x,program_1,aver,sum

非法的標識符和變量名:

J.Agate,$50,a<b,3x在C語言中,大寫字母和小寫字母的含義是不同的.

(3)標識符的分類

關鍵字又稱保留字,是C語言中一類特殊的標識符。每個關鍵字有固定的含義,用戶不能改變關鍵字的用途。用戶標識符用戶自定義標識符是用戶根據自己的需要而定義的標識符。為提高程序的可讀性,建議用戶使用有意義的名字來定義標識符。用戶標識符不能與關鍵字同名。2.3.1變量的聲明

變量有各種類型,在使用之前必須加以說明:

inti;/*說明i為整型變量*/

shortc,d,e;/*說明c,d,e為短整型變量*/

unsignedlongp,g;/*說明p,g為無符號長整型變量*/

floatx,y;/*說明x,y為單精度型變量*/

doublez;/*說明z為雙精度型變量*/

charch1,ch2;/*說明ch1,ch2為字符型變量*/2.3.2變量的初始化

在定義變量時,給變量賦值稱為變量的初始化。

如inta=5,b;在定義變量a和b的同時給變量a賦值為5,是對變量a進行初始化。

如inta,b;

a=5;先定義兩個整型變量a和b,然后給變量a賦值為5,不是初始化。

注:前者是對變量a進行初始化,后者是對變量a賦值。

1.整形變量整型變量的基本類型符號為int。

1)整型變量的分類----根據其占用內存字節數的不同分為以下六種類型:

(1)基本整型。類型關鍵字為int。

(2)短整型。類型關鍵字為short[int]。

(3)長整型。類型關鍵字為long[int]。

在上述三種類型前加上無符號整型標記unsigned,則只能用來存儲無符號整數。于是又有下列類型的整型變量:

(4)無符號基本整型。類型關鍵字為unsignedint。

(5)無符號短整型。類型關鍵字為unsignedshort[int]。

(6)無符號長整型。類型關鍵字為unsignedlong[int]。2)整型變量的值域整型數據類型16位機32位機所占位數取值范圍所占位數取值范圍int16-32768~3276732-231~(231-1)short16-32768~3276716-32768~32767Long32-231~(231-1)32-231~(231-1)unsignedint160~65535320~232unsignedshort160~65535160~65535unsignedlong320~(231-1)320~(231-1)3)整型匹配規則

整型變量的類型匹配規則----一個整型常量,可以賦值給能容納其值的整型變量。

例2-2寫出程序運行結果。

main()

{inta,b;

longx;

unsignedy;

a=-123;

b=456;

x=50000;

y=a+b+x;

printf(“%d%d%ld%u\n”,a,b,x,y);

運行結果:

-1234565000050333

2.實型變量

1)實型變量在內存中的存放情況----通常按指數形式存儲,并分成小數部分和指數部分分別存放。不同類型的實型變量所占存儲空間不同,而小數部分占位越多則數據的有效位數越多,精度越高;指數部分占位越多,則可表示的數值范圍越大。

2)實型變量分為三類:

(1)單精度型。用float表示,一般占4個字節(32bit)、 提供6~7位有效數字,例如:

floatx,y;指定x,y為單精度實型變量。

(2)雙精度型。用double表示,一般占8個字節(64bit)、 提供15~16位有效數字,例如

doublea,c;指定a,c為雙精度實型變量。

(3)長雙精度型。用longdouble表示,一般占16個字節 (128bit)、提供18~19位有效數字,用得很少。例2-3

分析下面程序的運行結果。

main()

floata;doubleb;

a=123456789.888;

b=123456789.888;

printf(“a=%fb=%f\n”,a,b);

運行結果:

a=123456792.000000b=123456789.8880003.字符變量

1)字符變量的定義:

字符變量是用來存放字符常量的,一個字符變量只能存放一個字符,而不是一個字符串。它的類型關鍵字用char,占用一個字節的內存單元。

例如:charc1,c2;/*定義兩個字符變量:c1,c2*/

c1=‘a’;c2=‘b’;/*給字符變量賦值*/

2)字符變量數據的存儲形式及其使用特點:

●將一個字符常量存儲到一個字符變量中,實際上是將該字符的ASCII碼值(無符號整數)存儲到字符內存單元中。

●ASCII碼值的形式與整數的存儲形式是一樣的。因此C語言允許字符型數據與整型數據之間通用,并且允許對字符數據進行算術運算。[例2-4]對字符型數據進行算術運算并輸出字符變量的字符形式及整數形式。

/*程序功能:將字母進行大、小寫轉換,并輸出轉換結果和字母的ASCII碼值*/

main()

{

charcl,c2;

c1=‘a’;c2=‘B’;

c1=cl-32;c2=c2+32;/*字母的大、小寫轉換*/

printf(“cl=%c,c2=%c\n”,cl,c2);/*以字符形式輸 出字符變量*/

printf(“cl=%d,c2=%d\n”,c1,c2);/*以整數形式輸 出字符變量*/

}

程序運行結果:

c1=A,c2=b

c1=65,c2=982.4運算符與表達式

●運算符是表示某種操作的符號。

●運算符的操作對象稱為運算數。

●用運算符把運算數連接起來形成的有意義的式子叫做表達式。2.4.1算術運算符與表達式

(1)加法運算符或取正值運算符:+,如1+2、+2。

(2)減法運算符或取負值運算符:-,如2-1、-2。

(3)乘法運算符:*,如1*2。

(4)除法運算符:/,如5/2。

注意,C語言規定:兩個整數相除,其商為整數,小數部 分被舍棄(稱為舍尾取整)。如5/2=2。如果操作數 中有負數,取整通常采取“向零取整”的方法。如5/- 3=-1

(5)求余運算符,或稱模運算符:%,運算符兩邊均要求是 整數,否則出錯。如9%5,結果為4。

●表達式----用運算符和括號將運算對象(常量、變量和函數等) 連接起來組成的符合C語言語法規則的式子。

●單個常量、變量或函數,可以看做是表達式的一種特例。稱 為簡單表達式。否則稱為復雜表達式。

●算術表達式的概念----表達式中的運算符都是算術運算符的 表達式。

例如:2+3

a*b-6%9+a/(x+y)補充:運算符的優先級與結合性

1.C語言中算術運算符的優先級和結合性

算術運算符中取正(負)值運算為單目運算,其余為雙目運算。

結合性----當一個操作數兩側的運算符具有相同的優先級時, 該操作數先與哪邊的運算符結合,自左至右的結合方 向,稱為左結合性。反之,稱為右結合性。

結合性是C語言的獨有概念。除單目運算符、賦值運算符和條件運算符是右結合性外,其他運算符都是左結合性。

運算種類結

性優先級+,

(單目)右結合性高低*,/,%左結合性+,

(雙目)左結合性2.表達式求值

●按運算符的優先級高低次序執行。例如:先乘除后加減。

●如果在一個運算對象(或稱操作數)兩側的運算符的優先級 相同,則按C語言規定的結合方向(結合性)進行。

例如:算術運算符的結合方向是“自左至右”,即:

在執行”a-b+c時,變量b先與減號結合,執行〝a-b〞; 然后再執行加c的運算。2.4.2賦值運算符及賦值表達式1.賦值運算符(1)基本賦值運算符(”=”)變量名

表達式如SUM=28;將賦值運算符右邊表達式的值存放到以左邊變量名所代表的存儲單元中。(2)復合賦值運算符一般形式為:

變量

雙目運算符=

表達式等價于:變量=變量雙目運算符(表達式)例如:

i+=5等價于:i=i+5x*=y+8等價于:

x=x*(y+8)C語言共有10種:+=,-=,*=,/=,%=,<<=,>>=,&=,∧=,‖=2.賦值表達式

由賦值運算符或復合賦值運算符,將一個變量和一個表達式連接起來而形成的表達式,稱為賦值表達式。賦值表達式的一般格式:

<變量><(復合)賦值運算符><表達式>

例:x=a*b-6%9+a/(x+y);

a+=a-a*a;

賦值表達式的求解過程

●任何一個表達式都有一個值。

●將賦值運算符右側的表達式的值賦給左邊的變量,賦值表達 式的值就是被賦值變量的值。

例如:x=5這個賦值表達式的值為5(x變量的值也是5)。說明:賦值運算符的左邊必須是變量,右邊的表達式可以是常量、變量、表達式和函數調用表達式。一個表達式有一個值及其類型,等于計算表達式所得結果的值和類型。賦值表達式作為表達式也是有值的,它的值就是左邊變量的最終值。賦值運算符的優先級和結合性賦值運算符的優先級低于算術運算符。例如:x*=3+y%6中優先級最高的是“%”,然后是“+”,最低的是“*=”。賦值運算符具有右結合性。若出現多個賦值運算符,則從右向左結合.如:

x=y=z=0相當于:x=(y=(z=0))提示:<1>賦值表達式中的“表達式”又可以是一個賦值表達式。例如:a=(b=1),把b=1的值賦給a,所以整個賦值表達式值就等于1,即a=1。賦值運算符按照“自右向左”的組合順序,因此〝a=(b=1)〞就等價于〝a=b=1〞。(即右結合性)<2>賦值表達式也可以包含復合賦值運算符。如a+=a-=a*=a,如果a的初值是2,此賦值表達式的運算過程是:先計算〝a*=a〞的值,即相當于a=a*a=2*2=4。再計算〝a-=4〞的值,即相當于a=a-4=4-4=0。最后計算〝a+=0〞的值,即相當于a=a+0=0+0=0。賦值的類型轉換

如果表達式值的類型,與被賦值變量的類型不一致,但都是數值型或字符型時,系統自動地將表達式的值轉換成被賦值變量的數據類型,然后再賦值給變量。

<1>將實型數據(單、雙精度實數)賦給整型變量時,舍棄實數的小數部分,在內存中以整數形式存放,如a為整型變量,運行〝a=1.2;〞的結果是a的值為1。

<2>將整型數據賦給單、雙精度變量時,數值不變,但以浮點形式存放在變量的存儲單元中。如有a=12,而a是float變量,運行時,先將12轉換成12.00000,然后再存放到a中。若a是double型變量,則先將12轉換成12.0000000000000,再以雙精度浮點數形式存放到變量a中。

<3>將一個雙精度數據賦給一個單精度變量時,截取前面7位有效數字,存放到單精度變量的存儲單元中,但要注意范圍不能溢出。

2.4.4關系運算符與關系表達式在程序中經常需要比較兩個量的大小關系,用來決定程序下一步的走向。比較兩個量的運算符稱為關系運算符。1.關系運算符在C語言中有以下關系運算符,如表2-4所示:關系運算符關系表達式說明<

x<y小于<=x<=y小于或等于>

x>y大于>=x>=y大于或等于==x==y等于!=x!=y不等于說明:

關系運算符都是雙目運算符,其結合性均為左結合。關系運算符的優先級低于算術運算符,高于賦值運算符。在六個關系運算符中,<,<=,>,>=的優先級相同,高于==和!=,==和!=的優先級相同。2.關系表達式關系表達式的一般形式為:表達式關系運算符表達式

例如:a+b>c-d,x>3/2,'a'+1<c,-i-5*j==k+1;都是合法的關系表達式。

由于表達式也可以是關系表達式。因此也允許出現嵌套的情況,例如:a>(b>c),a!=(c==d)等。

關系表達式的值是“真”和“假”,用“1”和“0”表示。

如5>0的值為“真”,即為1。(a=3)>(b=5),由于3>5不成立,故其值為假,即為0。【例2.6】關系表達式實例:

voidmain(){charc='k';inti=1,j=2,k=3;floatx=3e+5,y=0.85;printf("%d,%d/n",'a'+5<c,-i-2*j>=k+1);printf("%d,%d/n",1<j<5,x-5.25<=x+y);printf("%d,%d/n",i+j+k==-2*j,k==j==i+5);}

字符變量是以它對應的ASCII碼參與運算的。對于含多個關系運算符的表達式,如k==j==i+5,根據運算符的左結合性,先計算k==j,該式不成立,其值為0,再計算0==i+5,也不成立,故表達式值為0。2.4.5邏輯運算符

與邏輯表達式1.邏輯運算符

C語言中提供了三種邏輯運算符:&&與運算,雙目運算符,具有左結合性||或運算,雙目運算符,具有左結合性!非運算,單目運算符,具有右結合性2.邏輯運算符優先次序

邏輯非 !高 算術運算符 關系運算符<、<=、>、>= 同

==、!= 同 邏輯與 &&

邏輯或 ||

賦值運算符 =低

例:a>b&&c>d等價于(a>b)&&(c>d)!b==c||d<a等價于((!b)==c)||(d<a)a+b>c&&x+y<b等價于((a+b)>c)&&((x+y)<b)3.邏輯運算的值

邏輯運算的值也為“真”和“假”兩種,用“1”和“0”來表示。其求值規則如下:

1)與運算&&

參與運算的兩個量都為真時,結果才為真,否則為假。例如,5>0&&4>2,由于5>0為真,4>2也為真,相與的結果也為真。

2)或運算||

參與運算的兩個量只要有一個為真,結果就為真。兩個量都為假時,結果為假。例如:5>0||5>8,由于5>0為真,相或的結果也就為真。

3)非運算!

參與運算量為真時,結果為假;參與運算量為假時,結果為真。例如:!(5>0)的結果為假。

雖然C編譯在給出邏輯運算值時,以“1”代表“真”,“0”代表“假”。但反過來在判斷一個量是為“真”還是為“假”時,以“0”代表“假”,凡是非“0”的數值作為“真”。

例如:由于5和3均為非“0”因此5&&3的值為“真”,即為1。

又如:5||0的值為“真”,即為1。4.邏輯表達式

邏輯表達式的一般形式為:

表達式邏輯運算符表達式

邏輯表達式中的表達式可以又是邏輯表達式,從而組成了嵌套的情形。

例如:(a&&b)&&c。根據邏輯運算符的左結合性,上式也可寫為:a&&b&&c。邏輯表達式的值是式中各種邏輯運算的最后值,以“1”和“0”分別代表“真”和“假”。【例2.7】邏輯表達式。voidmain(){charc='k';inti=1,j=2,k=3;floatx=3e+5,y=0.85;printf("%d,%d/n",!x*!y,!!!x);printf("%d,%d/n",x||i&&j-3,i<j&&x<y);printf("%d,%d/n",i==5&&c&&(j=8),x+y||i+j+k);}

本例中!x和!y分別為0,!x*!y也為0,故其輸出值為0。由于x為非0,故!!!x的邏輯值為0。對x||i&&j-3式,先計算j-3的值為非0,再求i&&j-3的邏輯值為1,故x||i&&j-3的邏輯值為1。對i<j&&x<y式,由于i<j的值為1,而x<y為0,故表達式的值為1和0相與,最后為0。對i==5&&c&&(j=8)式,由于i==5為假,即值為0,該表達式由兩個與運算組成,所以整個表達式的值為0。對于式x+y||i+j+k由于x+y的值為非0,故整個或表達式的值為1。2.4.6條件運算符與條件表達式

1.條件運算符條件運算符為?和:,它是一個三目運算符,即有三個參與運算的量。

2.條件表達式

1)由條件運算符組成條件表達式的一般形式為:

表達式1?表達式2:表達式3

2)求值規則

條件表達式的求值規則為:如果表達式1的值為真,則以表達式2的值作為條件表達式的值,否則以表達式3的值作為整個條件表達式的值。3)條件表達式的使用

條件表達式通常用于賦值語句之中。

如條件語句:

if(a>b)max=a;

elsemax=b;

可用條件表達式寫為

max=(a>b)?a:b;

執行該語句的語義是:如a>b為真,則把a賦予max,否則把b賦予max。使用條件表達式時,還應注意以下幾點:

(1)條件運算符的運算優先級低于關系運算符和算術運算符,但高于賦值符。因此max=(a>b)?a:b

可以去掉括號而寫為:max=a>b?a:b。

(2)

條件運算符由“?”和“:”組成,是一對運算符,不能分開單獨使用。

(3)條件運算符的結合方向是自右至左。

例如:

a>b?a:c>d?c:d

應理解為a>b?a:(c>d?c:d)

這也就是條件表達式嵌套的情形,即其中的表達式3又是一個條件表達式。【例2.8】求兩個整數的最大值。main(){inta,b,max;printf("\ninputtwonumbers:");scanf("%d%d",&a,&b);printf("max=%d",a>b?a:b);}2.4.7逗號運算符與逗號表達式

C語言提供一種用逗號運算符〝,〞連接起來的式子,稱為逗號表達式。逗號運算符又稱順序求值運算符。

1.逗號表達式的一般形式及求解過程

逗號表達式的一般形式:

表達式1,表達式2,……,表達式n

逗號表達式的求解過程:由逗號隔開的一系列表達式從自左至右依次計算各表達式的值,“表達式n”即最后一個表達式的值為整個逗號表達式的值。

例如:逗號表達式〝a=2+3,a*6,a/3〞,先求解a=2+3,得a=5;再求a*6=30,由于a*6的值30沒賦給a變量,所以再求a/3時,a的值仍為5,a/3=1,所以最后逗號表達式的值等于1。

又例如:求逗號表達式〝(a=2*3,a*4),a+4〞的值,先求解a=2*3,得a=6;再求a*4=24;由于a*4的值沒有賦給a變量,a的值仍然是6,所以最后求解a+4=10,逗號表達式的值為10。2.逗號在C語言中不同情況下的作用

并不是任何地方出現的逗號,都是逗號運算符。很多情況下,逗號僅用作分隔符。

1)逗號在變量說明表和初始值表中起分隔作用。例如:

intx,y,z[6];

2)在函數的參數表中,逗號作為各參數的分隔符。例如:語句printf(〝%d,%d,%d〞,x,y,z);中的逗號是分隔符。但是如果改為:printf(〝%d,%d,%d〞,(x,y,z),y,z);則〝(x,y,z)〞就是一逗號表達式,即該括號中的逗號是逗號運算符,其值是z的值。最后兩個逗號是分隔符,表示有三個輸出項。3.逗號作為運算符的優先級

逗號作為運算符在所有運算符中級別是最低的。因此需要注意以下兩個表達式的計算:

①x=(a=1,2*3):此式的運算是將一個逗號表達式的值賦給變量x,即x=6。

②x=a=1,2*3:此式是一個逗號表達式,變量x為1,即x=1,而逗號表達式

溫馨提示

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

最新文檔

評論

0/150

提交評論