程序设计变量和表达式_第1页
程序设计变量和表达式_第2页
程序设计变量和表达式_第3页
程序设计变量和表达式_第4页
程序设计变量和表达式_第5页
已阅读5页,还剩127页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C+程序设计(2)n主讲教师:全红艳n 第二章第二章 变量和表达式变量和表达式内容nC+语言的字符集和单词n数据类型和存储类型n常量n变量n运算符n表达式n类型转换nC+ 程序的结构n标识符模板n主要讨论C+的字符集和标识符的构词规则。 C+的字符集是ASCII字符集的子集P695,包括以下几类字符: n英文字母,AZ,az(必须区分大小写)n数字字符:09n运算符,例如:+、-、*、/、%,等等n标点符号,例如:, ;和各种括号n其他符号,例如下划线_、美元符号$、井号#等n标识符是由若干个字符构成的“程序单词”,用来标记程序中的各种语法成分,例如标识变量、函数等等n与一个函数或数据对象有关

2、的,有字母(A-Z, a-z)、数字(0-9)和下划线组成,但开头字符。n用途n用于标识一个函数或数据对象、自定义类型的名称标识符n构成规则构成规则n组成标识符的字符只能是:字母、数字、组成标识符的字符只能是:字母、数字、下划线;下划线; n标识符的首字符必须是字母或下划线、标识符的首字符必须是字母或下划线、不能是数字符,中间不能出现空格字符;不能是数字符,中间不能出现空格字符;n标识符的长度(字符数)是任意的,但标识符的长度(字符数)是任意的,但一般仅前一般仅前31个字符有效;个字符有效;n不能与系统保留字同名;不能与系统保留字同名;n尽量能做到尽量能做到“见名知义见名知义”实例实例n例2-

3、1n AB1,ab1,Rec_Count,RecCount均是合法的标识符,注意AB1与ab1如果同时用在同一个程序中,是两个不同的标识符。n例2-2n1a,%name,$addr均是非法的标识符。标识符举例()n正确的标识符( id) : nsum_of_squares j9 box_22AnGetData Bin3D4 count A a n不正确的标识符: n40Hours Get Datanbox-22 cost_in_$ int nage# 2000TaxRate Age-Of-Cat标识符举例()n保留字不可以用作标识符,P683n 例如: if 、else 等不可以用作标识符n

4、保留字: continue 、while、 case 、mainn标识符区分大小写n 例如: ba 和 Ba 是不同的两个标识符n使用有意义的、可读性好的标识符n 例如: 用average 表示平均的量的标识符n 用sum 表示和的量标识符n保留字是系统定义的特殊标识符(专用词汇)。通常用来作为数据类型描述符(类型名),语句成分描述符等。n例2-3 int、float数据类型描述符类型名;n if、for 语句成分描述符。nANSI C设置32个保留字,ANSI C+在此基础上增加了29个保留字C+ 保留字保留字nAppendix A ,P683nAnd 、not、this、union、whi

5、leC+ Data Typesstructuredarray struct union class addresspointer referencesimple integral enumchar short int long boolfloatingfloat double long doublenC+ 数据类型分为简单类型(基本数据类型分为简单类型(基本类型)、构造类型类型)、构造类型 和地址类型(指和地址类型(指针类型)针类型) C+C+的简单数据类型(的简单数据类型(Simple Data TypesSimple Data Types)简单数据类型(简单数据类型(simple type

6、ssimple types)整型(整型(integral) 浮点型浮点型(floating)char short int long bool enum float double long doubleunsignedC+中的标准数据类型n整型(整型(Integral Types)n表示整个数据大小和它们的负号表示整个数据大小和它们的负号n声明为声明为 int, short, or longn例如:例如:4578 -4578 0n浮点型(浮点型(Floating Types)n用小数点的数据表示的实型数值用小数点的数据表示的实型数值n声明为声明为 float 或或 doublen例如:例如: 9

7、5.274 95. .265n字符型字符型(Character Type)n表示单一的字符表示单一的字符n声明为声明为 charn例如例如: B d 4 ?*两种重要的数据类型nchar 单一字符类型n在字符集中表示一个字符 ( ASCII , EBCDIC , Unicode , GB ).nP689 Appendix EnA a 1 ? nnstring 字符序列nProgramming C+ hellon a n字符串模板,用 #include n空字符(0) 结束标志例子#include int main()char a=a;coutChar a takes bytes: sizeof

8、(a)endl;coutvalue of a is: aendl;int b;coutInt b takes bytes: sizeof(b)endl;coutvalue of b is: bendl;b=a;coutvalue of b is: bendl;return 0;程序的输出nChar a takes bytes: 1nvalue of a is: anInt b takes bytes: 4nvalue of b is: -858993460nvalue of b is: 97 整型数据nchar, short, int, long 类型表示不同大小的整型数.占有的空间的大小依赖

9、于机器. 利用sizeof 操作符可以得到在你机器中占有的空间大小 .n例如: sizeof(int) 得到的是int类型占有的字节数 sizeof(char)=sizeof(short)= sizeof(int)= sizeof(long)n在 32位计算机中: n char : 1 字节(byte) -128,127 n short : 2字节 (byte) -32768,32767 n int : 4字节 (byte) -2147483648, 2147483647 n long : 4字节 (byte) -2147483648, 2147483647 nMost compilers d

10、ont give error message when integer overflow occurs. e.g. INT_MAX +1 INT_MIN0000000010 0000000.0000n越界时不提示错误信息,输出结果错误。n例如:n#include iostream.hnint main()nnshort a=1024*128; /2的17次方ncouta;n结果是0n输出低16位16位16位整型量(整型量(int)n十进制(十进制(Decimal)n 22 16 1 498 0 4600 -378 -912n八进制(八进制( Octal )n 022 015n十六进制(十六进制

11、(Hexadecimal)n 0 xFF 0 x10科学计数法 2.7E4 means 2.7 x 10 4 = 27000.02.7E-4 means 2.7 x 10 - 4 = 0.00027例如:例如:main() float a= 2.7E4 .3;#include #include using namespace std;using namespace std;int main()int main() const int PRICE=30; const int PRICE=30; int num,total; int num,total; float v ,r,h; float v

12、 ,r,h; num=10; num=10; total=num total=num* *PRICE;PRICE; couttotal endl; couttotal endl; r=2.5; r=2.5; h=3.2; h=3.2; v=3.14159 v=3.14159* *r r* *r r* *h;h; coutvendl; coutvendl; 常量常量变量变量变量先声变量先声明后使用明后使用符号常量符号常量#include using namespace std;int main() const int PRICE=30; int num,total; float v ,r,h;

13、num=10; total=num*PRICE; couttotal endl; r=2.5; h=3.2; v=3.14159*r*r*h; coutv endl;整型常量shortunsigned short 2字节intunsigned int 4字节longunsigned long 4字节整型变量整型变量声明#include using namespace std;int main() const int PRICE=30; int num,total; float v ,r,h; num=10; total=num*PRICE; couttotalendl; r=2.5; h=3.

14、2; v=3.14159*r*r*h; coutvendl;实型常量float 4float 4字节字节 3.4 3.410103838 7 7位有效数字位有效数字double 8double 8字节字节 1.7 1.71010308308 15 15位有效数字位有效数字long double long double 8 8字节字节 1.7 1.71010308308 15 15位有效数字位有效数字实型变量默认为double型后缀 F(或 f)为 float型后缀 L(或 l)为 long double型浮点数据值n浮点数据有整数部分和小数部分, 中间是小数点,或者只有整数部分或小数部分,但不

15、能两者都没有.n例如: 18.4 500. .8 -127.358 n或者,浮点数据可具有指数部分, 科学计数法:n例如: 1.84E1 5E2 8E-1 -.127358E3n字符常量n单引号括起来的一个字符,如:a, D, ?, $n字符变量n用来存放字符常量例:char c1,c2; c1=a; c2=A;n字符数据在内存中的存储形式n以ASCII码存储,占1字节,用7个二进制位n字符数据的使用方法n字符数据和整型数据之间可以运算。n字符数据与整型数据可以互相赋值。n字符串常量n例:CHINA a an所以:char c; c=a;C H I N A 0a 0aPage 28例如n#in

16、clude n main( )n char c1,c2;n c1=a;n c2=b;n c1=c1-32;n c2=c2-32;n coutc1c2endl;nreturn 0;n nnewline(换行符) nnhorizontal tab(水平制表键) tnvertical tab(垂直制表键) vnbackspace(退格键) bncarriage return (回车键) rnformfeed (进纸键) fnalert (beel) (响铃符) a nbackslash (反斜杠键) nquestion mark (问号) ?nsingle quote (单引号) ndouble q

17、uote (双引号) n布尔型变量的说明:例:bool flag;n布尔型数据的取值:只有 false 和 true 两个值bool 数据类型数据类型nbool类型是一种固有的类型类型是一种固有的类型n仅有两种值:仅有两种值: true 和和false n我们可以声明一个变量为我们可以声明一个变量为bool类型类型 n每个每个bool类型变量包含类型变量包含 true 或或 false的值的值 (true-1, false-0)bool hasFever; / true if has high temperaturebool isSenior; / true if age is at leas

18、t 55 在在C+中中n数值 0 表示 falsen任何非零数值表示true例: int a=3; double f=3.56; char c=a; int c(5);Page 34n不同类型数据进行混合运算时,C+编译器会自动进行类型转换。n为了避免不同的数据类型在运算中出现类型问题,应尽量使用同种类型数据。n可以采用强制类型转换:n例如:float c;int a,b;c=float(a)/float(b); n或 c=(float)a/(float)b; 变量的存储类型nauton属于暂时存储,其存储空间可以被若干变量多次覆盖使用。nregistern存放在通用寄存器中。nexternn

19、在所有函数和程序段中都可引用。nstaticn在内存中是以固定地址存放的,在整个程序运行期间都有效。数据和数据类型n数据被存储在计算机的内存(memory)中n每一个内存区有唯一的地址( address)n数据类型 一系列指定的数值以及这些数值上的操作nC+允许程序员定义自己的数据类型n每个数据必须具有指定的类型声明声明n声明将一个标识符与一个数据对象、函数或数据类型联系起来,以便程序员可以利用名称使用该对象。n在一个程序中,每个标识符是不同的(不同的量用不同的标识符表示)n每个标识符在使用前必须先声明n声明必须用分号结束. nchar letter;nchar ch;n一条声明语句中可以声明

20、几个变量.n char letter, ch;n例如:nint n; /静态分配nint* nPtr = new int; /动态分配nvoid instructions();nbool user_says_yes();声明声明什么是变量?n变量是一个用标识符标识的内存位置.n sum=a 0110 1000 1000 1110 an声明一个变量包括变量名称和它的数据类型n例如: int d=5;声明的任务int ageOfDog;int ageOfDog;float taxRateY2K;float taxRateY2K;char middleInitial;char middleIniti

21、al; 声明使编译器给变量分配内存单元,并将标识声明使编译器给变量分配内存单元,并将标识符与内存位置(地址)联系起来符与内存位置(地址)联系起来4 bytes for taxRateY2K4 bytes for taxRateY2K1 byte for middleInitial1 byte for middleInitial#include int main()/ int 类型的对象int value = 2;int pow = 10;cout value raised to the power of pow : t;int res = 1; / 保存结果/ 循环控制语句: 反复计算res/

22、 直至cnt 大于powfor ( int cnt=1; cnt = pow; t)res = res * value;cout res endl;常量常量n字面常量(字面常量(Literal value )n常量数值常量数值n例如:例如:A string 100 3.1415926n命名常量命名常量 (Named constant)n在声明语句中用常量修饰在声明语句中用常量修饰n例如:例如: 常量串常量串 nBOOK_TITLE=programming in C+;什么是命名常量 ?n命名常量命名常量 是我们用标识符指定的内存位是我们用标识符指定的内存位置置.其中的数值不能够改变的其中的数值

23、不能够改变的. n VALID CONSTANT DECLARATIONSn const string STARS = “*” ;n const float NORMAL_TEMP = 98.6 ; n const char BLANK = ;n const int VOTING_AGE = 18 ; n const float MAX_HOURS = 40.0 ;n一些惯用法一些惯用法算术操作符算术操作符n一元操作符(一元操作符(Unary) : +(plus) -(minus)n二元操作符(二元操作符(Binary): + - * /(integral,floating-point )n%

24、(modulus)(integral only)n-3%2 /-1n7.0/2.0 / 3.5 double/double doublen7/2 / 3 int/int int除法操作符n除法操作的结果依赖于它的操作数的类型n如果操作数至少有一个是浮点类型,则结果为浮点类型. 否则, 结果为整型. n例如: 11 / 4 结果为 2n 11.0 / 4.0 结果为 2.75n 11 / 4.0 结果为 2.75mainmain函数返给操作系统一个整型数值函数返给操作系统一个整型数值/*/ FreezeBoil program/ This program computes the midpoin

25、t between/ the freezing and boiling points of water/*#include using namespace std;const float FREEZE_PT = 32.0 ; / Freezing point of waterconst float BOIL_PT = 212.0 ; / Boiling point of waterint main ( ) float avgTemp ; / Holds the result of averaging / FREEZE_PT and BOIL_PT主函数主函数续续 cout Water free

26、zes at FREEZE_PT endl ; cout and boils at BOIL_PT degrees. endl ; avgTemp = FREEZE_PT + BOIL_PT ; avgTemp = avgTemp / 2.0 ; cout Halfway between is ; cout avgTemp degrees. endl ; return 0 ;模操作n取模运算符 %只能用于两个整数的操作数,有一个整型的结果. n结果为整型除法的余数. n例如:11 % 4 结果 3 因为)411283 C+ C+操作符操作符8int age;age = 8;age = age

27、+ 1; age9age+age+age相当于相当于age=age+1age=age+1先增值再使用先增值再使用ageage前缀型增量运算符8int age;age = 8;+age; age9age后缀型增量运算符8int age;age = 8;age+; age9ageage+age+相当于相当于age=age+1age=age+1先使用先使用ageage再增值再增值自减操作符自减操作符100int dogs;dogs = 100;dogs-; dogs99dogsdogs- 相当于相当于dogs = dogs -1先使用先使用dogs再减一再减一前缀和后缀操作符n前缀和后缀的区别:n后

28、缀(Suffix): 表达式(num+)值为操作数原始值. n前缀(Prefix):表达式(+num)值为操作数新的值. n例如: nint num=10; cout num+ num; 10 11nint num=10; cout +num b? 1:2C+的一些操作符 P684Precedence OperatorDescription Higher ( ) 函数调用函数调用(Function ) +正正(Positive) -负(负(Negative) *乘乘Multiplication) / 除(除(Division)优先级别优先级别 %模模Modulus (remainder) +加

29、加Addition -减减SubtractionLower = 赋值赋值Assignment优先级别n当有多个操作符时,优先级别决定了哪个运算符先运算nAppendix B关联n当有两个优先级别相同运算符的表达式,左边运算符的优先级别高,从左到右运算n在 C+ 二元操作符中,n * , / , % , + , - 都是左关联 n表达式 9 - 5 - 1 表示 ( 9 - 5 ) - 1n4 - 1n 37 * 10 - 5 % 3 * 4 + 9表示表示 (7 * 10) - 5 % 3 * 4 + 9 70 - 5 % 3 * 4 + 970 - (5 % 3) * 4 + 9 70 -

30、2 * 4 + 9 70 - ( 2 * 4 ) + 9 70 - 8 + 9 ( 70 - 8 ) + 9 62 + 9 71表达式的值圆括号()n圆括号能够改变运算顺序.n圆括号中的部分先计算n计算 (7 * (10 - 5) % 3) * 4 + 9n ( 7 * 5 % 3 ) * 4 + 9n ( 35 % 3 ) * 4 + 9n 2 * 4 + 9n 8 + 9n 17n基本算术运算符n + - * /(若整数相除,结果取整)n %(取余,操作数为整数)n优先级与结合性n先乘除,后加减,同级自左至右n+, -(自增、自减)n例:i+; - j;Page 69n举例n=n+5n表达

31、式的类型等号左边对象的类型n表达式的值等号左边对象被赋值后的值Page 70n有10种复合运算符:+=, -=, *=, /=, %=,=,&=,=,|= n例a+=3 等价于 a=a+3x*=y+8 等价于 x=x*(y+8)a=5表达式值为5a=b=c=5表达式值为5,a,b,c均为5a=5+(c=6)表达式值为11,a为11,c为6a=(b=4)+(c=6) 表达式值为10,a为10,b为4,c为6a=(b=10)/(c=2) 表达式值为5,a为5,b为10,c为2a+=a-=a*a 相当于 a=a+(a=a-a*a)Page 72n格式n表达式1,表达式2n求解顺序及结果n先求

32、解1,再求解2,最终结果为表达式2的值n例na=3*5 , a*4 最终结果为60Page 73关系运算与关系表达式n关系运算是比较简单的一种逻辑运算,优先次序为: = = !=n 优先级相同(高) 优先级相同(低)n 关系表达式是一种最简单的逻辑表达式n其结果类型为 bool,值只能为 true 或 false。n例如:ab,cb)&(xy) 其结果类型为 bool,值只能为 true 或 false int x, y ; x = 4; y = 6;表达式表达式 值值x y truex + 2 = y truey = x falsey = x+2 truey = x + 3 7 (t

33、rue) n例如nbool a;nint c=5,g=7;na=cg;n if (a)n n一般形式n表达式1?表达式2:表达式3n表达式1 必须是 bool 类型n执行顺序n先求解表达式1,n若表达式1的值为true,则求解表达式2,表达式2的值为最终结果n若表达式1的值为false,则求解表达式3,表达式3的值为最终结果n例: x=ab? a:b;n注意:n条件运算符优先级高于赋值运算符,低于逻辑运算符n表达式2、3的类型可以不同,条件表达式的最终类型为 2 和 3 中较高的类型。n例: x=ab? a:b;sizeof 运算符n语法形式sizeof (类型名)或 sizeof (表达式)

34、n结果值:“类型名”所指定的类型或“表达式”的结果类型所占的字节数。n例:nsizeof(short)nsizeof(x)n运算规则n将两个运算量的每一个位进行逻辑与操作n举例:计算 3 & 5n 3: 0 0 0 0 0 0 1 1n 5:(&) 0 0 0 0 0 1 0 1n3 & 5: 0 0 0 0 0 0 0 1n用途:n将某一位置0,其他位不变。例如:将char型变量a的最低位置0: a=a&0376;n取指定位。例如:有char c; int a; 取出a的低字节,置于c中:c=a&0377;n运算规则n将两个运算量的每一个位进行逻辑或操

35、作n举例:计算 3 | 5n 3: 0 0 0 0 0 0 1 1n 5:(|) 0 0 0 0 0 1 0 1n3 | 5: 0 0 0 0 0 1 1 1n用途:n将某些位置1,其他位不变。例如:将 int 型变量 a 的低字节置 1 : a = a | 0 xff;n运算规则n两个操作数进行异或:若对应位相同,则结果该位为 0,若对应位不同,则结果该位为 1,n举例:计算 071052n 071: 0 0 1 1 1 0 0 1n 052: () 0 0 1 0 1 0 1 0n 071052 : 0 0 0 1 0 0 1 1n用途:n使特定位翻转(与0异或保持原值,与1异或取反)n

36、例如:要使 01111010 低四位翻转:n 0 1 1 1 1 0 1 0n ()0 0 0 0 1 1 1 1n0 1 1 1 0 1 0 1单目运算符,对一个二进制数按位取反。例: 025:0000000000010101 025:1111111111101010n左移运算()n右移后,n低位:舍弃n高位:无符号数:补0n 有符号数:补“符号位”运算符优先级括号+,-,sizeof*, /, %+, -=, !=位运算&|?:赋值运算逗号运算低高混合运算时数据类型的转换 隐含转换n一些二元运算符(算术运算符、关系运算符、逻辑运算符、位运算符和赋值运算符)要求两个操作数的类型一致。

37、n在算术运算和关系运算中如果参与运算的操作数类型不一致,编译系统会自动对数据进行转换(即隐含转换),基本原则是将低类型数据转换为高类型数据。char,short,int,unsigned,long,unsigned long,float,double低 高混合运算时数据类型的转换 隐含转换n当参与运算的操作数必须是bool型时,如果操作数是其它类型,编译系统会自动将非0数据转换为true,0转换为false。n位运算的操作数必须是整数,当二元位运算的操作数是不同类型的整数时,也会自动进行类型转换,n赋值运算要求左值与右值的类型相同,若类型不同,编译系统会自动将右值转换为左值的类型。混合运算时数

38、据类型的转换 强制类型转换n语法形式:n类型说明符(表达式)n或n(类型说明符)表达式n强制类型转换的作用是将表达式的结果类型转换为类型说明符所指定的类型。变量赋初值n变量赋初值可用赋值运算符=;n变量声明:nstring firstName ;nchar middleInitial ;nchar letter ;nint ageOfDog;n有效的赋值语句:n firstName = “Fido” ;nmiddleInitial = X ;nletter = middleInitial ;nageOfDog = 12 ;什么是C+的表达式?n表达式是变量、常量和操作符号的有效排列。n在C+每

39、个表达式能够计算得到一个给定类型的数值nn表达式的值 n 9 + 5 is 14赋值操作的语法 Variable = Expression表达式右侧的式子必须可以计算得到一个数值.计算的结果存储在左侧变量的内存单元中变量 左侧数值 ( lvalue )表达式的类型必须与变量的类型相匹配.例如: int a=0.4; 得不到正确的结果正确赋值语句的例子nstring firstName, n middleName,n lastName,n name;n name = firstName+middleName+lastName;n说明说明: 符号符号 + 表示串联表示串联n给一个字符串变量赋值时,

40、等号右侧的表达式必须是给一个字符串变量赋值时,等号右侧的表达式必须是一个字符串的表达式、文字串或一个字符一个字符串的表达式、文字串或一个字符. 问题的提出问题的提出n需求变化引发软件危机n1968年北大西洋公约组织的计算机科学家在联邦德国召开的会议上第一次提出了“软件危机”。n软件危机包含两方面问题:a)如何开发软件,以满足不断增长,日趋复杂的需求;b)如何维护数量不断膨胀的软件产品 n面向对象程序设计方法的产生n类继承n类封装大型项目的开发流程n问题的确定(需求分析、了解业务、目标的精确化)n项目设计(UML建模,模块划分,组织关系,数据库设计等)n具体模块实现n选择数据结构(List, S

41、tack, Queue)n分析算法n整体测试(白盒法、黑盒法)n后期维护、二次开发第一个例子第一个例子#include using namespace std;int Square( int );int Cube( int );int main() cout The square of 27 is Square(27) endl; cout and the cube of 27 is Cube(27) endl; return 0;int Square( int n ) return n * n;int Cube( int n ) return n * n * n;C+ 的表达式b2 - 4a

42、c的平方根 sqrt ( b * b - 4.0 * a * c )myAge 和yourAge平均数的平方根sqrt ( ( myAge + yourAge ) / 2 )n整形和字符串整形和字符串n浮点数据浮点数据n“set width” 控制下一个要输出的数据项占的字符位置数,适用于数值和串不用于字符型数据n例如:cout setw(fieldwidth) dataitem n数据dataitem 将右对齐打印输出n如果fieldwith小于dataitem 的长度,则自动扩大长度,输出全部字符. n设置字段的宽度是先做的内容.n int ans = 33 , num = 7132;n

43、cout setw(4) ansn setw(5) numn setw(4) Hi;n bb33b7132bbHin注意:#include / setw(4) n缺省时, 大的浮点数 用科学计数法输出n例如: 123456789.5 1.234567E+08 n操作符fixed用于强制输出所有的浮点数,以十进制形式输出. n例如. cout fixed 123456789.5 ; 123456789.5 n操作符showpoint用于强制所有数据的输出为小数形式.n操作符setprecision(number)用于控制输出数据的小数点的位置. n float x = 310.0 , y= 4.

44、827 ;n cout setiosflags(ios:fixed)n setw(10) n setprecision(2) n x ;n bbbb310.00#include iostream.h#include iomanip.h/using namespace std;int main()float gg=3241.323441;coutsetiosflags(ios:fixed)setprecision(5)gg;return 0;举例#include / for setw( ) and setprecision( )#include using namespace std;int main ( ) float myNumber = 123.4587 ; cout setiosflags(ios:fixed) set

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论