资源描述:
《《数据类型和运算符》PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第三章数据类型、运算符与表达式§3.1C的数据类型C语言的数据结构是以数据类型形式出现的.C的数据类型如下:数据类型整型字符型实型(俘点型):单精度型、双精度型枚举类型构造类型数组类型结构体类型共用体类型指针类型空类型基本类型语言中的数据有常量和变量之分,它们分别属于以上这些类型。程序举例求圆的周长和面积main(){floats,area,r;r=4.2;s=2*3.14*r;area=3.14*r*r;printf("s=%f,area=%f",s,area);}X+2=3变量常量程序中哪些是常量、变量§3.2.1常量1.常量:在程序运行过程中其
2、值不能被改变的量。如:15,-3为整型常量5.4,1.23为实型常量‘a’,‘b’为字符型常量‘ac’2.符号常量:用一个标示符代表一个常量。符号常量一般用大写字母表示。如:#definePI3.1415926(#define是宏定义命令)常量一般用于初始化变量;常量不占用存储空间。§3.2.2变量变量:其值可以改变的量,变量的定义一般是放在函数的开始部分声明。变量占用内存空间。例如:inta=5;每个变量都有名字,变量名习惯用小写字母表示,一个变量在内存中占据一定的存储单元,变量名实际是一个符号地址。通过变量名找到相应的内存地址,从其存储单元中读取
3、数据。5a变量名变量值存储单元§3.2.2变量标识符:用来标识变量名、符号常量名、函数名、数组名、类型名的有效字符序列称为标识符。(不包括文件名)标识符的命名规则:字母、数字、下划线构成,第一个字符是字母或下划线;区分大小写;sun、Sun、SUN是三个不同的变量。长度(最好不超过8个字符)见名知义2ab,d%t,S-rrff注:变量名一般用小写字母表示。变量必须“先定义,后使用”,一般在函数的开始部分进行定义。每个变量有一个名字并指定为确定的类型,通过变量名区分不同的变量。§3.3整型数据——整型常量整型常量有如下三种形式:十进制整数如:124,-
4、98八进制整数要求以0开头,如:0123十六进制整数要求以0x开头,如:0x12计算机直接处理的是二进制数§3.3整型数据——整型变量整型变量:有如下四种类型:1.基本型:用int表示,占2字节。2.短整型:用shortint或short表示,占2字节。3.长整型:用longint或long表示,占4字节。以上三种类型的变量,最高位为符号位,用1表示负数,用0表示正数。4.无符号型,不能存放负数,分别表示为unsignedint,unsignedshort,unsignedlong关于各种类型在内存中所占的位数以及数的范围见p43--表3-1必须记住
5、实型常量1.十进制形式:由数字和小数点组成。如:0.0,123.0,0.12,12.34。2.指数形式:如:123e2和123E2都表示123×10×10。注意:e或E的前面要有数字、后面必须是整数。规范化指数形式:字母E前数的小数点左边应有(只能有)一位非零数字。如1.23E4§3.4.1实型数据-实型常量e31.2e3.5§3.4实型数据§3.4.2实型数据-实型变量实型数据在内存中按照指数形式存储实型变量分类1.单精度型:用float表示,在内存中占4个字节有效数字6~7。2.双精度型:用double表示,在内存中占8个字节有效数字15~16。
6、3.长双精度型:用longdouble表示,在内存中占16个字节。floata;/*float只能接收7位有效数字,a=123456.789;因此最后两位小数不起作用*/实型常量的类型实型常量作为双精度double来处理,若在数的后面加字母f或F如(1.65f),则按单精度float处理。程序举例main(){intn;floatp,sum;n=20;p=25.5;sum=n*p;printf(“sum=%f”,sum);}注意:何时用实型何时用整型小明给同学买书3.5字符型数据3.5.1字符常量3.5.2字符变量3.5.2字符串常量§3.5.1字符
7、常量C字符常量是用单引号''括起来的一个字符.如'a'、'A'、'?'转义字符:一个以‘’开头的字符序列.见教材P48表3-3见表3-3字符功能换行t横向跳格(即跳到下一个输出区)v竖向跳格b退格r回车f走纸换页\反斜杠字符““”\‘单引号字符ddd1到3位8进制数所代表的字符,‘xhh1到2位16进制数所代表的字符§3.5.2字符变量字符型变量:只能存放一个字符,其定义形式:charc1,c2;c1='a';c2='b';字符数据在内存中的存储形式:将一个字符常量存放到字符变量中,是将该字符的ASCII码存放到存储单元,占
8、用一个字节,其存储形式与整型数据的存储形式类似.01100001011000109798c1='a‘c2=‘