版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章数据类型及格式输出、运算符与表达式主要内容
C的数据类型
常量与变量整型数据及格式输出实型数据及格式输出字符型数据及格式输出字符串及格式输出变量的赋初值各类数值型数据混合计算算术运算符和算术表达式赋值运算符和赋值表达式逗号运算符和逗号表达式3.1C的数据类型
整型(int,long,unsigned,unsignedlong)
字符型(char)
基本类型单精度型(float)
浮点型双精度型(double)
枚举类型(enum)
数据类型数组类型([])构造类型结构体类型(struct)
共用体类型(union)
指针类型(*)空类型(void)3.2常量和变量一、常量概念:在程序运行中,其数值不能被改变的量。分类:直接常量和符号常量1.直接常量:是在程序中直接引用的数据。分为:整型、实型、字符型、字符串如:3,4.5,’S’,“china”等以数据的原形出现!2.符号常量:特点:在程序中不能给它赋值。概念:是用标识符来表示一个常量。定义形式(定义在函数体之外):#define标识符常量数据例如:#definePI3.14159在程序预处理时,凡是出现标识符PI的地方都将用数据3.14159来替换。如:2*2.3*PI就等价于2*2.3*3.14159。习惯上,符号常量用大写字母表示。#definePRICE30
intmain(){
int
num,total;num=10;total=num*PRICE;
printf(“total=%d”,total);return0;}符号常量在其作用域内不能再被赋值。使用符号常量的好处:(1)含义清楚;(2)一改全改二、变量变量是指在程序运行中,其值可以被改变的量。基本概念:变量代表计算机内存中的某一存储空间,该存储空间中存放的数据就是变量的值。在同一程序块中,每个变量都有唯一的名字,不能被重复定义。
inta,b,c;floatx,y;charc1,c2;或intc1,c2;
自己设定,满足标识符的规定。如:int,float,char“;”不可省定义形式:类型标识符变量名1[,变量名2,变量名3,...];例如:注意事项:(1)变量必须先定义后使用
(2)每个变量必须被指定为一种类型
(3)一般习惯上用小写字母表示变量,用大写字母表示符号常量,以示区别。(仅是习惯不是规定)三、C语言中的标识符概念:就是用来标识变量名、符号常量名、函数名、类型名、文件名等的有效字符序列。(1)标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。定义规则:如:_1yearmonthstudent_namesum0M.D.Jones$123#a3b?ca=b(2)在C语言中,大写字母和小写字母被认为是不同的字符。因此,a和A,I和i,Sum和sum,分别是两个不同的标识符。一般,变量名用小写字母,与人们习惯一致。(3)用户自定义的标识符不能与保留字(关键字)同名。保留字关键字概念:就是具有特定含义的标识符,用户不能用来作自定义标识符。C语言中的关键字较少,由ANSI标准推荐的关键字有32个。常用的有:(1)与数据类型有关的(14):charintfloatdoublesignedunsignedshortlongvoidstructuniontypedef
enum
sizeof(3)
与程序控制结构有关的(12):
dowhileforifelseswitchcase
defaultgotocontinue
breakreturn 见课本P365附录II(2)与存储类别有关的:
autoexternregisterstatic一、整型常量的表示方法整型常量的表示方法:
1.十进制整数:123、-76、02.八进制整数(以0开头):076、-0253076转换成十进制:7*8+63.十六制整数(以0x开头):0xa、0x20、0xf40xf4转换成十进制:15*16+43.3整型数据(1)整型变量的分类基本型,以int表示。长整型,以longint表示,或以long表示。无符号型,其中无符号型又分为无符号整型和无符号长整型,分别以unsignedintunsignedlong表示。默认为有符号型:(signed)int,(signed)long
int二、整型变量类型比特数最小取值范围[signed]int16-215~(215-1)即-32768~32767[signed]long[int]32-231~(231-1)unsigned[int]160~(216-1)即0~65535unsignedlong[int]320~(232-1)intx;longy;2000200120022005xy内存内存地址20032004所有变量必须先定义再使用!!(2)整数在内存中的存放形式整数在内存中以补码表示:一个正数的补码和其原码的形式相同;负数的补码:将该数的绝对值的原码,按位取反再加1。例如:整数8的16位(2字节)编码原码:0000000000001000反码:0000000000001000补码:00000000
00001000例如:整数-8的16位(2字节)编码原码:1000000000001000反码:1111111111110111补码:11111111
11111000内存中存储形式内存中存储形式(3)整型变量的定义类型标识符变量名1[,变量名2,变量名3,...];如:inta,b;(指定变量a,b为整型)unsignedintc,d;(指定变量c,d为无符号整型)longe,f;(指定变量e,f为长整型)(5)整型数据的格式输出例:main(){inta,b,sum;a=123;b=456;sum=a+b;printf(”a=%d,b=%d,c=%d\n”,a,b,sum);}
结果:a=123,b=456,c=579
原样输出格式符与输出项一一对应转义字符(换行)printf函数的一般格式:printf("格式控制字符串",输出项列表);◆必须用英文的双引号括起来。
◆作用是控制输出项的格式和输出一些提示信息。◆要输出的表达式。◆常量、变量、运算符表达式、函数返回值等,每个输出项之间用逗号“,”分隔。格式控制字符组成:普通字符、转义字符、格式说明。普通字符按原样输出,主要用于输出提示信息。:转义字符“\”起头的转义字符(输出所表示的字符或实现其功能,见P25表3-1,详后述)格式说明由"%"
和"格式字符串"组成:%格式字符串。它表示按规定的格式输出数据,与输出项一一对应。:常用的整型数据的输出格式符:%d:以有符号十进制数形式输出整数。%ld:以有符号十进制数形式输出长整数。%md:以有符号十进制数形式输出整数,至少占m位。如果数据的位数小于m,右对齐,若大于m,则按实际位数输出。例如:printf("%d\n",100);100printf("%5d\n",100);100100printf("%d%8d″,100,100*100);10010010010000C语言的整型数据在内存中的存储形式是【】A)原码B)补码C)反码D)ASCII码以下【】组中的标识符都是合法的C语言用户标识符:A)a_10B)charC)_intDsigned3aba#bdaya一、实型常量的表示方法:十进制形式:由数字和小数点组成;例如:3.44.
.3注意:必须有小数点指数形式:由“十进制小数”+“e(或E)”+“十进制数整数”三部分组成。例如:12.5e-6表示12.5×10-6十进制小数(尾数部分)e(或E)十进制数整数(指数部分)3.4实型数据注意:e或E的两边必须有数,且其后面必须为整数;
如:6E0.2e56E
二、实型变量(1)实型变量在内存中的存放形式和变量定义实型数据在内存中是按照规范化的浮点数形式存储的。变量定义:float变量名;
double变量名;数符尾数指数符号指数如:floata,b,c;doublea1,a2;a,b,c为float型变量名。a1,a2为double型变量名。(2)实型变量的分类单精度(float)型双精度(double)型长双精度(longdouble)型类型比特数有效数字数值范围float326~7-10-38~1038double6415~16-10-308~10308
longdouble12818~19-10-4932~-104932实例floatx;doubley;2000200320042011xy内存内存地址(3)实型数据的输出举例P47例3.4:main(){floata,b;a=1.23e1;b=a+20;
printf("%f\n",a);printf("%f\n",b);}运行结果:12.30000032.300000TC默认浮点数据输出6个小数位数(4)实型数据的输出格式符(P37)%f:按小数形式输出实型数,整数部分全部输出,默认6位小数。%m.nf:按小数形式输出实数,制定保留n位小数,数据总宽度至少为m位,右对齐,超过m位按实际长度输出。例如:printf(“b=%5.2f”,2.3);
二种表现形式:用单引号括起来的一个字符;如:'A'、'1'、'?'等。只能是英文的单引号3.5字符型数据一、字符常量注意:a、’a’、”a”互不相同,分别为变量、字符常量、字符串常量。9、’9’、”9”互不相同,分别为整型常量、字符常量、字符串常量。用单引号括起来的由右斜杠(\)引导的转义字符,长度为一个字节,其含义不是字符本身,而是转成新的意义。(P25表3-1)如:'\n''\101''\x41'在统计字符个数时,只能记为一个字符转义字符表字符形式功能
\n换行\t横向跳格\b退格,将当前位置移到前一列\f\\、\'、\"8进制数表示的ASCII码对应的字符反斜杠、单引号、双引号\ddd换页
\xhh16进制数表示的ASCII码对应的字符一个字符的多种表示方法:任一字符都可用’\ddd’或’\xhh’表示,其中ddd为该字符的ASCII码八进制形式、hh为该字符的ASCII码十六进制形式例:’A’、’\101’、’\x41’均表示A要避免的错误:表示单引号:不是'''表示双引号:不是'"'表示斜线:
不是'\'转义字符应用举例printf("\n1234\nabcd\n");1234abcdprintf("\n1234\\\n");printf("\'\"\x41\n");1234\'"AP25例子3.1字符的值域:即字符的取值范围。ASCII字符表中的所有字符,每个字符型数据在内存中占一个字节,包括可显示字符和非显示字符。例如:charc;c=’A’;c=65;c=’\101’;c=’\x41’;
c=0101;c=0x41;
二、字符变量字符变量用来存放字符常量,注意一个字符变量只能存放一个字符。一般以一个字节来存放一个字符,或者说一个字符变量在内存中占一个字节。变量中可存储一个字符或者一个0~255之间的无符号整数。三、字符数据在内存中的存储形式及使用方法
存储形式:按ASCII码存储,不是字符本身,其形式与整数的存储形式一样。使用方法:
按字符使用:则使用字符本身。
按数值使用:则使用该字符的ASCII码值。例3.6向字符变量赋以整数main(){chara,b;a=97;b=98;printf("%c,%c\n",a,b);printf("%d,%d\n",a,b);}运行结果:a,b97,98例3.7大小写字母的转换main(){chara,b;a='a';b='b';a=a-32;b=b-32;printf("%c,%c\n%d,%d\n",a,b,a,b);}运行结果:A,B65,66四、字符型数据输出格式符%c:按字符输出一个字符,但不输出单引号。%mc:按字符输出一个字符,占m位,右对齐。main(){charc=‘a’;
inti=97;printf(“%c,%d\n”,c,c);printf(“%c,%d\n”,i,i);}a,97a,97注:C语言允许字符变量参与数值运算,用ASCII码运算;大小写字母ASCII码相差32。五、字符串常量字符串常量是用一对双引号括起来的若干字符序列,隐含以’\0’结尾。字符串中字符的个数称为字符串长度。长度为0的字符串(即一个字符都没有的字符串)称为空串,表示为“”(一对紧连的双引号)。字符串常量和字符常量区别:1)字符常量由单引号括起来,字符串常量由双引号括起来。2)字符常量只能是单个字符,字符串常量则可以含0个或多个字符。3)可以把一个字符常量赋予一个字符变量,但不能把一个字符串常量赋予一个字符变量。例如:charc1='A';是可以的,但charc1="A";是不合法的。如:有一个字符串为“CHINA”,则它在内存中的实际存储如下所示:最后一个字符‘\0’是系统自动加上的,它占用6字节而非5字节内存空间。又如:“ab\tcd”存储长度为6个字节。
注意:在源程序中书写字符串常量时,不必加结束字符‘\0’,否则画蛇添足。CHINA\04)字符常量占一个字节的内存空间。字符串常量占的内存字节数等于字符串中字节数加1。增加的一个字节中存放字符“\0”(ASCII码为0)。这是字符串结束的标志,由系统自动加上。六、串输出格式符%s:输出一个字符串。%ms:输出一个字符串,至少占m列,右对齐,超过按实际输出。例4.5main(){printf(“%s,%7s\n”,”CHINA”,”CHINA”);}CHINA,CHINA例:printf(“%s”,“CHINA”);printf(“CHINA”);把“CHINA”当作一个字符串把“CHINA”当作要原样输出的字符序列3.6变量赋初值在说明变量的同时给变量一个初始值。变量定义分配存储空间变量初始化分配存储空间的同时存入数据inta,b;ab??inta=1,b=2;ab12不确定例:看一看,下列的定义哪些是正确的?inta=5,b=3;inta=b=c=3;inta,b,c=3;应写为:inta=3,b=3,c=3;/*只有c赋了初值*/初始化不是在编译阶段完成的,而是在程序运行时执行本函数时赋予初值的,相当于有一个赋值语句。例如:inta=3;相当于:inta;/*指定a为整型变量*/a=3;/*赋值语句,将3赋予a*/§3.7各类数值型数据间的混合运算数据类型的级别:低高intunsignedlongdoublefloatchar横向的必须先转成纵向类型才能进行运算运算规律:1)两个同类型数据运算结果为原类型。28+2int301/2int02)两个不同类型的数运算时,系统自动将低级类型转换为高级类型,而后进行同类型运算,结果为高级类型。(表示范围大的为高级类型,详细见P44图3.5)3.2/2结果为double型数据28+‘a’结果为int型数据32768*32结果为longint型数据3)多个数运算时,类型转换要逐步进行。2/3*6.3结果为?4.200.03.8算术运算符与算术表达式三类算术运算符号:
1.基本算术运算符
2.强制类型转换运算符
3.自增、自减运算符要求掌握每一种运算符号的
功能、优先级、结合性
[P42
表3-3]结合性的含义:当某一运算对象两侧的运算符号优先级相同时,按照结合性所规定的方向进行运算。如 a#b#c(#代表某一运算符)若先运算a#b,再将其结果与c运算,称为左结合性:从左至右运算若先运算b#c,再将a与其结果运算,则称右结合性:从右至左运算一、基本算术运算符+:加法-:减法*:乘法/:除法%:取余或模两个整数相除取整数商
3/5=0-5/3=-1 3./5=0.6 3/5.=0.6 3%5=3%两侧都应为整型数据2.5%3出错优先级:(*,/,%)高于(+,-)结合性:自左向右
P42表3-3二、算术表达式用算术运算符和括符将操作数连接起来的式子。优先级:()*/%+-结合性自左向右,与数学上一致。三、强制类型转换运算符(类型名)常量(类型名)变量(类型名)表达式功能:将一个常量、变量或表达式转换成所需类型。优先级:属单目运算符,仅低于括号,高于基本算术运算符。结合性:自右向左注意:类型名要用括号括起来,如果要转换表达式的类型,则表达式也要用括号括起来。例:
float(2/3)错误
(int)(2.5)%3值为2(float)5/2值为2.500000四、自增与自减运算符(重点和难点)++i,--ii先自增(减)1,再使用ii++,i--先使用i,i再自增(减)1(1)单独使用时++i;等价i++;等价i=i+1;(2)j=++i;(3)j=i++;若i的初始值为3i=4;j=4;i=4;j=3;结合性:自右向左例:i=2;j=-i++;分析:(1)++、--、+(正号)、-(取负)是同级运算符,结合方向:自右向左。(2)-i++等价于-(i++)(3)对于括号内的自增运算,又要先使用i,再使i增加1。运算结果:i的值为3,j的值为-2。优先级:属单目运算符,仅低于括号类,高于基本算术运算符。a=3;printf(“%d”,a++);运算结果:输出3,a的值为4。a=3;printf(“%d”,++a);运算结果:输出4,a的值为4。a=3;printf(“%d”,(a++)%2*(a+2));运算结果:输出6,a的值为4。注意:此时a的值已经修改为4!!例:3--出错
-i--即-(i--),非(-i)--a=3;b=-a++;执行后,b的值为-3,a的值为4切记:只能用于变量,不能用于常量或表达式3.5
赋值运算符、赋值表达式、赋值语句赋值运算符:=赋值表达式:变量=表达式功能:将“=”右侧表达式的值赋给左侧变量的值,赋值表达式的值是被赋值变量的值。赋值语句:变量=表达式功能:将“=”右侧表达式的值赋给左侧变量的值。*所有表达式末尾加“;”后即变为语句赋值表达式举例:(1)x=(y=12)/4y值为12,x值为3,表达式的值为3(2)x=y=12/4y值为3,x值为3,表达式的值为3(3)(x=y)=12/4该赋值运算符左边不是变量,而是一个表达式一、赋值运算符赋值运算符:=优先级:仅优先于最低级的逗号运算符。结合性:自右向左例:c=b=a=5c=(b=(a=5))注1)赋值运算符号不等于数学中的“等号”;注2)自增、自减运算实际上也是一个特殊的赋值运算符。赋值运算过程“变量=表达式”过程:①计算右侧表达式的值②类型转换:若“=”两侧变量和表达式的类型不一致,将右侧表达式的值类型转换为左侧变量的类型。③将转换好的右侧表达式的值赋给左侧变量。例:main(){floata=-32.89;inti;i=a;printf(“%d\n”,i);a=i;printf(“%f\n”,a);}-32-32.000000赋值运算小结:①存储长度长的数据赋给存储长度短的变量,可能会丢失数据;②存储长度短的数据赋给存储长度长的变量,保持数值大小不变;③数据赋给存储长度相同的变量,按存储形式原样照赋。二、复合赋值运算符*=、/=、%=、+=、-=等等格式:变量复合赋值运算符表达式功能:复合运算符是一个运算符,但功能上,是两个运算符功能的组合。例:
a+=b相当于a=a+ba*=b+c相当于a=a*(b+c)
优先级:仅优先于最低的逗号运算符,和“=”同级。结合性:自右向左赋值表达式和赋值语句举例例1:a+=a-=a*aa初值为2先做:a=a-a*a4-2表达式值为-2(a=-2)
再做:a=a+a-4表达式值为-4(a=-4)例2:sum=(a=123)+(b=456)赋值语句:等效于a=123;b=456;sum=a+b;结果:a=123,b=456,sum=579*表达式中的变量可用给该变量赋值的表达式代替(应加括号)3.10
逗号运算符和逗号表达式形式:逗号表达式1,逗号表达式2,…,逗号表达式n功能:从左至右依次计算各表达式的值,逗号表达式的值是最后一个表达式的值。优先级:最低结合性:自左至右例:d=(a=3,b=5,c=a+b,c+2,a++)
依次进行逗号表达式中各表达式的运算,整个表达式的值为计算结束后,a、b、c、d的值分别为d=(a=3,b=5,c=a+b,c+2,a++)3a=35b=58c=8103a=433d=334,5,8,3例:(a=3*5,a*4),a+5的值为
a的值为2015(a=3*5,a*4),a+515a=15602020◆必须用英文的双引号括起来。◆由普通字符和格式说明字符组成。◆由若干个地址组成的列表。◆变量的地址、字符串的首地址、指针变量等,以逗号“,”间隔。◆变量地址组成:地址运算符“&”后跟变量名。3.4
格式输入函数scanfscanf函数调用的一般形式:scanf(“格式控制字符串”,输入项地址列表);如scanf(“%d,%d”,&a,&b);函数功能:按照格式控制字符串所规定的格式,从键盘上输入数据,依次赋给各个变量。格式控制串由下列2类组成:
1.“%”起头的输入项格式符(与输入项一一对应)
2.普通字符(原样输入)注:不能用转义字符。常用格式字符:类型格式字符说明(短)整型%d长整型%ld实型(单精度型)%f输入小数形式或指数形式(不区别小数和指数)实型(双精度型)%lf输入小数形式或指数形式(不区别小数和指数)字符型%c输入一个字符,不带‘’%d输入一个字符的ASCII码字符串%sscanf和printf的区别:例:inta;printf(“%d”,a);scanf(“%d”,a);intb;printf(“%d\n”,b);scanf(“%d\n”,&b);doubled;printf(“%f\n”,d);scanf(“%f”,&d);输出实数时,不论是单精度还是双精度数,都可用%f;输入实数时,单精度数用%f,双精度数用%lf。用scanf函数注意点例:用scanf函数给整型a、b输入数据,使a=123,b=4561)scanf(“%d,%d”,&a,&b);输入:123,456↙
或123,456↙2)scanf(“%d%d”,&a,&b);输入:123456↙或123456↙或123(按Tab键)456↙或123↙456↙如果输入:123,456↙错误3)scanf(“a=%d,b=%d”,&a,&b);输入:a=123,b=456↙
或a=123,b=456↙
输入数值数据前加一些前导空格、Tab、回车不影响输入。注:①非格式字符要原样输入,一般用空格或逗号作为数据间隔符。②输入数值数据时,前导空格不计。③输入空格时,可以用多个空格、一个或多个Tab、回车代替。4)scanf(“%d%d”,&a,&b);输入:123456↙
或123456↙或123(按Tab键)456↙或123↙456↙注意:输入多个数值数据时,如果没有设定分隔符,在输入数据时可用空格、回车或Tab键来分隔。C编译在遇到这些符号即认为前一数据结束。例:charx,y,z;scanf(“%c%c%c”,&x,&y,&z);1)输入:def↙则:x=‘d’,y=‘’,z=‘e’2)输入:def则:x=‘d’,y=‘e’,z=‘f’例:charx,y,z;scanf(“%c%c”,&x,&y);scanf(“%c,&z);1)输入:de↙f↙则:x=‘d’,y=‘e’,z=‘\n’2)输入:def则:x=‘d’,y=‘e’,z=‘f’注:在用“%c”输入字符时,输入任意字符均作为有效字符。例:输入数据使得a=1,b=2,x=3,y=4inta,b;intx,y;scanf(“%d%d”,&a,&b);scanf(“%d%d”,&x,&y);输入:12↙34↙例:inta;charb;floatc;scanf(“%d%c%f”,&a,&b,&c);输入:1234a123o.26↙则:a=1234,b=‘a’,c=123.0注:在获取输入数据时,如果遇到非法数据,则当前数据到此结束。3.4.3字符数据的输入输出
printf函数+“%c”格式符
scanf函数+“%c”格式符
putchar函数:用于输出一个字符
getchar函数:用于输入一个字符(1)函数格式int
putchar(ch);(2)函数功能向标准输出设备(一般为显示器)输出一个字符,并返回输出字符的ASCII码值。一、putchar函数(字符输出函数)函数返回值类型函数的名称函数的参数参数ch可以是字符常量、字符变量和整型数值表达式。例1:putchar(‘\n’);在屏幕上输出一个换行符例2:c=‘*’;putchar(c);在屏幕上输出一个“*”例3:putchar(65)相当于putchar(‘A’)在屏幕上输出字母A,65是A的ASCII码。putchar函数的说明:注:要调用该函数,在程序前要包含“头文件”(在头文件中包含了putchar函数有关的信息):
#include“stdio.h”
或#include<stdio.h>否则,会出现错误提示:“undefine
sybom‘_putchar’in…”例:#include<stdio.h>main(){inta=65;charb='B';
putchar(a);putchar(65+1);
putchar(b);putchar('B'+1);}程序运行结果为:ABBC包含函数putchar的头文件(1)函数格式int
getchar();(2)函数功能从标准输入设备(一般为键盘)读入一个字符,返回该字符的ASCII码值。二、getchar函数(字符输入函数)函数返回值类型函数的名称无参数注意:程序运行到getchar()时,将返回用户屏幕,等待用户输入一个字符,输入后,才继续向下运行。若用户输入字符后未按回车键,则键入的内容一直保留在键盘缓冲区中,只有用户键入回车键后,字符输入函数getchar才进行处理。
函数getchar将回车键作为一个字符读入。如果程序中有两个以上函数getchar时,应该一次性输入所需字符,最后再按回车键。也要在程序前包含头文件:
#include“stdio.h”
或#include<stdio.h>无论输入的是英文字母或标点符号还是数字,都是作为字符输入。例:#include<stdio.h>/*包含头文件*/voidmain(){inta;a=getchar(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 团队建设全面服务合同
- 2024年度植物新品种授权与转让合同
- 房屋交易合同补充协议律师建议
- 家居购买合同模版
- 摇一摇服务合同的违约责任认定
- 银行保证合同书范本
- 2024年食品偏磷酸钾项目可行性研究报告
- 市政工程分包合同模板
- 2024年度港口货物吊车搬运合同
- 2024年门禁考勤控制器项目可行性研究报告
- 股骨粗隆间骨折
- 殡仪馆鲜花采购投标方案
- 智能桥梁结构安全监测系统解决方案课件
- 办公楼物业服务管理的培训
- JTG∕T F30-2014 公路水泥混凝土路面施工技术细则
- 帆船知识课件
- 企业宣传片项目进度计划
- 2023-2024学年统部编版九年级道德与法治下册全册知识点总结讲义
- 奇瑞QQ冰淇淋说明书
- 糖尿病性舞蹈病
- EPC项目承包人施工方投资估算与设计方案匹配分析
评论
0/150
提交评论