C程序设计之数据类型、运算符与表达式

上传人:jiups****uk12 文档编号:56889739 上传时间:2018-10-16 格式:PPT 页数:57 大小:394KB
返回 下载 相关 举报
C程序设计之数据类型、运算符与表达式_第1页
第1页 / 共57页
C程序设计之数据类型、运算符与表达式_第2页
第2页 / 共57页
C程序设计之数据类型、运算符与表达式_第3页
第3页 / 共57页
C程序设计之数据类型、运算符与表达式_第4页
第4页 / 共57页
C程序设计之数据类型、运算符与表达式_第5页
第5页 / 共57页
点击查看更多>>
资源描述

《C程序设计之数据类型、运算符与表达式》由会员分享,可在线阅读,更多相关《C程序设计之数据类型、运算符与表达式(57页珍藏版)》请在金锄头文库上搜索。

1、C程序设计,数据类型、运算符与表达式,C的数据类型 常量与变量 整型数据 实型数据 字符型数据 变量赋初值 各类数值型数据间的混合运算 算术运算符和算术表达式 赋值运算符和赋值表达式 逗号运算符和逗号表达式,C程序设计 第三章 数据类型、运算符与表达式,3.1 C的数据类型,变量要先说明,后使用。 变量的定义包括 数据类型 存储类型作用域,C程序设计 第三章 数据类型、运算符与表达式,返回主菜单,其值不可以再分解为其它类型,利用这些数据类型还可以生成更复杂的数据结构,如表、栈、队列等,根据已定义的一个或多个数据类型用构造的方法来定义,其值用来表示某个量在内存储器中的地址,其类型说明符为void

2、,3.2 常量与变量,常量: 其值不能被改变的量称为常量,常量被分为 不同的类型 直接常量 整型常量 实型常量 字符常量 符号常量 ,用标识符表示# define PRICE 30,C程序设计 第三章 数据类型、运算符与表达式,12、0、-3,4.6、-1.23,a、b,例3.1,返回主菜单,标识符: 用来表示变量名、符号常量名、函数名、数组名、类型名、文件名的有效字符序列。字母、数字、下划线。标识符的长度有一定的限制。 区分大小写,例31 符号常量的使用# define PRICE 30 # include void main() int num,total;num=10;total=num

3、*PRICE;printf(“total=%dn”,total); ,符号常量名一般情况都用大写形式表示,而变量名都用小写形式表示,变量:代表内存中具有特定属性的一个存储单元,用来存放数据(不同于符号常量,可以任意赋值),返回主菜单,区分变量值与变量名,用来存放一些初始值、计算的中间结果或最终结果。,变量的作用变量的命名规则:知名见意变量的强制定义规则可以使程序中的变量使用不发生错误 在编译时就可对该变量分配内存确定了对这个变量所能进行的操作,3.3 整型数据,整型常量的表示方法 十进制整数 八进制整数 十六进制整数 整型变量 内存中的存放形式 整型变量的分类 整型变量的定义 整型数据的溢出,

4、C程序设计 第三章 数据类型、运算符与表达式,例3.3,例3.2,返回主菜单,例 i10,例 i=10,整型变量的分类,例32 整型变量的定义与使用# include void main() int a,b,c,d;unsigned u;a=12;b=-24;u=10;c=a+u;d=b+u;printf(“a+u=%d,b+u=%d”,c,d); ,a+u=22,b+u=-14,例33 整型数据的溢出# include void main() int a,b;a=32767;b=a+1;printf(“%d,%d”,a,b); ,32767,-32768,3.4 实型数据,实型常量的表示方法

5、 十进制数形式 指数形式 实型变量 内存中的存放形式 实型变量的分类 实型数据的舍入误差,C程序设计 第三章 数据类型、运算符与表达式,实型常数不分单、双精度,都按双精度double型处理,0.0、25.0、5.789,2.1E5 、3.7E-2,例3.4,返回主菜单,数符,小数部分,指数,实数3.14159在内存中的存放形式:,实型变量的分类,float型的数据提供7位有效数字 double型的数据提供1516位的有效数字,程序清单 main() float x; x=7.1234567890; printf(“%20.18f“,x); ,7.123456954956054690_,程序清单

6、 main() double y; y=7.12345678901234567890; printf(“%20.18f“,y); ,7.123456789012345250_,程序清单 main() float x; double y; x=123456.789; y=123456.789; printf(“%f,%f“,x,y); ,123456.789062,123456.789000_,/*只能将123456.7七位有效数字赋值给x*/,/*能将全部数位赋值给y*/,3.5 字符型数据,字符常量 字符变量 字符数据在内存中的存储形式及使用方法 字符串常量,C程序设计 第三章 数据类型、运

7、算符与表达式,定义 char c1,c2;,返回主菜单,C语言中规定有另一类字符常量,它们以开头,被称作转义字符。我们前面已多次遇到的n这个符号,它表示换行符号。这些转义字符只有几个很常用,如n、t、。,转义字符及其含义,例3.5,C语言中还规定有另一类字符常量,它们以开头,被称作转义字符。,例3.5 转义字符的使用 # include printf(“ ab ct derftgn”);printf(“ htibbj kn”); ,打印结果: fab c gde h jik,显示结果: f gde h j k,存放字符的ASCII码,而不是字符本身一个字符数据既可以以字符形式输出,也可以以整数

8、形式输出字符数据和整型数据可以相互赋值,例3.6,例3.7,字符数据在内存中的存储形式,a=x,b=y,例3.6 程序清单 main() char x1,x2; x1=97;x2=98; printf(“%c,%c“,x1,x2); ,a,b,输出字符的使用格式,例 3.7 大小写字母的转换 main() char x1,x2; x1=a;x2=b; x1=x1-32; x2=x2-32; printf(“%c,%c“,x1,x2); ,A,B,允许字符数据与整数直接进行算术运算,int i; char c; i=a; C=97;,如果ASCII码值为128255,用d 输出时则显示负数,字符

9、常量与字符串常量的比较,“x“在在内存中的表示为 x在在内存中的表示为,x,0,x,C语言中没有专 门的字符串变量,0为系统自动加上,一般形式:,C程序设计 第三章 数据类型、运算符与表达式,3.6 变量赋初值,类型说明符 变量1= 值1,变量2= 值2,;,例如:,int a=3; 可以定义变量的时候同时赋值 int b,c=5; 可以给一部分变量赋值 float x=3.2,y=3f,z=0.75; char ch1=K,ch2=P;,返回主菜单,赋值符号,变量赋初值就是在定义变量的同时,给变量赋一个值。,3.7 各类数值型数据间的混合运算,自动转换(由系统自动完成) 强制类型转换,C程序

10、设计 第三章 数据类型、运算符与表达式,返回主菜单,字符型数据在内存中是按数值方式存放的。而整型数据和实型数据 肯定也是按数值方式存放的。在这种前提下,这三种类型的数据 实际上是可以进行混合运算的。,自动转换规则,1)若参与运算量的类型不同,则先转换成同一类型,然后进行运算 2)转换按数据长度增加的方向进行,以保证精度不降低 3)所有的浮点运算都是以双精度进行的 4)char型和short型参与运算时,必须先转换成int型 5)在赋值运算中,赋值号两边量的数据类型不同时,赋值号右边量的类型将转换为左边量的类型。,低,高,float,3.8 算术运算符和算术表达式,C运算符简介 算术运算符和算术

11、表达式,C程序设计 第三章 数据类型、运算符与表达式,返回主菜单,C运算符的分类,算术运算符和算术表达式,C程序设计 第三章 数据类型、运算符与表达式,算术表达式 运算符的优先级与结合性 强制类型转换运算符 自增、自减运算符,例3.8,用算术运算符号和括号将运算对象(也称操作数)连接起来的、符合C语法规则的式子,称为算术表达式。 运算对象包括常量、变量、函数等。看下面的例子: 3+4.5*a-b*4/3,例3.8 强制类型转换 main() double x; int y; x=33.3; y=(int)x; printf(“%f,%d“,x,y); ,33.300000,33,在进行强制类型

12、转换时,要产生一个临时数据,这个临时数据的类型是指定的类型,而原始数据的类型不会发生变化。,+是自增运算符-是自减运算符+k的具体含义是:先使k的值加1,然后再使用k的值。 k+的具体含义是:先使用k的值,然后再使k的值加1。多用于循环语句中,例子: k=1; j=+k; j的值被赋成2 k=1; j=k+; j的值被赋成1,注意:1、 自增运算符(+)和自减运算符(-)都只能用于变量,而不能用于常量或表达式。因为常量的值是不允许改变的,而表达式的值实际上也是一个常量。 2、 +、-和负号运算符(-)的优先级别是一样的,但比算术运算符的优先级别高。3、+、-的结合方向是“自右向左”的。如:-i

13、+,运算符的优先级与结合性,3.9 赋值运算符和赋值表达式,赋值运算符类型转换 复合的赋值运算符 赋值表达式,C程序设计 第三章 数据类型、运算符与表达式,变量表达式,x=a+b 、a8,返回主菜单,例3.9,类型转换,规则:,1)实型赋予整型,舍去小数部分。 2)整型赋予实型,数值不变,但将以浮点形式存放,即增加小数部分(小数部分的值为0)。 3)float型与double型 4)字符型赋予整型,由于字符型为一个字节,而整型为二个字节,故将字符的ASCII码值放到整型量的低八位中。有两种情况 :系统将字符处理为无符号字符类型 系统(如 Trubo C+)将字符处理为带符号 的,总结:按存储单元的存储形式直接传送。,5)将一个int,short,long型数据赋给一个char型变量时,只将低8位原封不动地送到 char型变量,即截断。,00 10 00 01,00 00 00 01,c=!,00 10 00 01,i=289,11 11 11 10,00 00 00 00,c=376,11 11 11 10,11 11 11 11,c=376,符号扩展:保持数值不变,复合的赋值运算符,变量 双目运算符=表达式,a+=5,a=a+5,x*=y+7,x=x*(y+7),r%=p,r=r%p,+=,-=,*=,/=,%=,=,&=, =,|=,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号