4数据类型及表达式

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
整理课件
5.符号常量 在C语言中,可以用一个标识符来表示一
个常量,称之为符号常量。符号常量在使用之 前必须先定义,其一般形式为: #define 标识符 常量 其功能是把该标识符定义为其后的常量值。
整理课件
例4.2
#define PI 3.14159 /*定义符号常量PI*/
main()
{
float area,r;
整理课件
4.2.1 常量
1.整型常量 数据类型为整型的常量即为整型常量,又称整
常数。在C语言中,使用的整型常量有八进制、十 六进制和十进制3种。其中八进制、十六进制主要 用于表示整型常量在内存中的存储形式,也就是表 示某整型常量的机器码;十进制表示外部数据,其 值表示的是真值。
整理课件
(1)八进制整型常量 八进制整型常量必须以0开头,即以0作
\v
竖向跳格
\\
反斜线符"\"
\b
退格
\'
单引号符
\"
双引号
整理课件
4.字符串常量 字符串常量是由一对双引号括起的字符序
列,可以没有字符,也可以只有一个字符。例 如,"CHINA" ,"How are you ! ", "$12.5" ," ","A","\nc\234\\" 等都是合法的字符 串常量。
整理课件
(3)十进制整型常量
十进制整型常量没有前缀。
整型常量的几点说明如下。
① 常量的类型
常量的类型可以根据整型常量描述的数值 来确定其类型。
当整型常量的值为32768~32767时,可 以看作基本型整型常量。
当整型常量的值为0~65535时,可以看作 无符号整型常量。
当 整 型 常 量 的 值 在 大 于 32767 或 小 于 32768时,可以看作长整整理型课件常量。
数据类型
构造类型 指针类型
字 符 型 ( char, 1byte) 无 值 型 ( void)
数组类型 结构体类型 联合体类型 枚举类型
注:其中()括起来的是对应类型的类型关键字及该类 型在内存中所占的字节数。 整理课件
4.2 C语言程序中数据的表示方法
数据是组成程序的必要元素,根据数据在程 序中值的变化与否,数据在C语言程序中以常量 和变量两种形式表示。
整理课件
2.浮点常量 实型也称为浮点型。实型常量也称为实
数或者浮点数。实型常量不分单、双精度, 都按双精度double型处理,其有效位数为15 ~16位。
整理课件
(1)小数形式 小数形式由数码0~ 9和小数点组成。当某
浮点数整数部分或小数部分为0时,0可以省略 ,但小数点不可省略。 例如: 0.0,.25,5.789,0.13,5.0,300., 267.8230,123.等均为合法的实数。 345(无小数点),a7.(数码不可以是字母) 等均为非法的浮点数。
为八进制数的前缀。其数码取值为0~7。由 于八进制数主要用于表示某整型常量的机器 码,所以当表示某数机器码时,八进制数前 面没有符号;如果有符号,则是对其所代表 的真值取反。如0123,0123代表的真值为 83,0123代表的常量则为83。
整理课件
(2)十六进制整型常量 十六进制整型常量的前缀为0X或0x。其数
1.2x1010*/
char ch='K'; /*初始化ch为'K'*/
int d=5;
/*初始化d为5*/
int b=d; /*初始化b为5,在int b=d;定义时d应有确定的
值*/
整理课件
4.不同类型变量的说明
(1)整型变量 整型变量可分为基本型、短整型、长整型和
无符号型4类。 ① 基本型
基本型的类型说明符为int,在内存中占2个字 节,其 取值的范 围为 215~2151 ,即 32768~ 32767。 ② 短整型
第4章 数据类型及表达式
整理课件
4.1 数 据 结 构 4.2 C语言程序中数据的表示方法 4.3 运算符及其表达式 4 C语言中的类型转换
整理课件
4.1 数 据 结 构
数据结构是程序设计中计算机的操作对象 以及操作对象之间关系和操作的描述。一个函 数体中包括两大部分内容:其一是数据描述部 分,其二是算法实现部分。要完成数据描述部 分的内容,就必须寻找问题中的操作对象以及 它们之间的关系,然后用计算机语言加以描述。
整理课件
(3)一个变量在使用前必须有一个确 定的值。
变量定义后,由于变量占据一定的 内存空间,所以变量是有值的,但是该 值是不确定。如果用该不确定的值参与 运算,所得到的值也是不确定的。
整理课件
2.变量定义的格式 变量定义的一般形式为: [修饰符] 类型说明符 变量表列; [ ]是可选项
整理课件
整理课件
(2)指数形式 指数形式由尾数加阶码标志e或E以及阶码
(只能为整数,可以带符号)组成。
其一般形式为a En(a为尾数,n为阶码)
其值为 a×10n 例如,2.1×105可以表示为2.1E5,3.7×
可以表示为3.7E2
整理课件
3.单字符常量 单字符常量是用单引号括起来的一个字符。单字
符常量可以有如下几种表示方法。
整理课件
整型变量的说明形式为: [修饰符] int 变量表列;
(2)浮点变量 浮点变量分为单精度浮点型和双精度
浮点型两类。单精度浮点型类型说明符为 float,双精度浮点型类型说明符为double。
整理课件
浮点变量说明的格式为: float变量表列; 或 double 变量表列;
例如:
float x,y; /*定义x,y为单精度浮点型*/ double a,b,c; /*定义a,b,c为双精度浮点型*/ float x=1234.56789; /*定义x为单精度浮点型,并初 始化值为1234.567*/
字符串 "program"在内存存储的形式如图 4.1所示。
整理课件
p
r
o
g
r
a m \0
图4.1 字符串存储形式
该字符串占用8个字节的存储空间,但其 有效字符的个数却是7,最后一个字节存储字 符串结束标志“\0”。
整理课件
字符串的有效字符的个数是第一个“\0”前字符 的个数的总和,有效字符的个数也称为字符串长度。
例如: "computer" 长度为8。 "\n" 长度为1。 "abc\n\345\0china" 长 度 为 5 , 而 不 是 16 , 因 为 “\0”后的字符是无意义的,“\n”是一个转义字符 ,“\345”是八进制表示的一个字符。 "\"\'\\" 长度为3,因为“\"”、“\\”与“\'”分别为 一个字符。
整理课件
3.变量的初始化 变量在使用前应该有确定的值。在程序中常常
需要对变量赋初值,以便使用变量。 [修饰符] 类型说明符 变量1= 值1,变量2= 值2, ……; 例如:
int a =5; /*初始化变量a为5*/
float x=3.2,y=1.2e10;
/* 初 始 化 x 为 3.2 , y 为
/*定义area,r为float型变量*/
r=5;
/*使r的值为5*/
area=PI*r*r; /*计算以r为半径的圆面积*/
printf("area=%f\n",area); /*输出圆面积*/
}
整理课件
4.2.2 变量 1.变量的基本知识
在程序的执行过程中值可以发生变化的量 称为变量。 (1)变量的命名。
整理课件
(3)字符型变量 字符型变量的取值是字符型数据。字符型
变量的类型说明符是char。 字符型变量类型说明的格式: char 变量表列;
例如: char c1,c2; /*定义c1,c2为字符型*/
C语言提供的数据结构是以数据类型形式表 示的。
整理课件
C语言提供了丰富的数据类型,主要有以下
类型:
基 本 型 ( int, 2byte)
长 整 型 ( long, 4byte)
整型
短 整 型 ( short, 2byte)
无 符 号 整 型 ( unsigned, 2byte)
基本类型 浮点型
单 精 度 浮 点 型 ( float, 4byte ) 双 精 度 浮 点 型 ( double, 8byte)
变量的命名符合标识符的规定。变量名 决定了某一变量在内存中的位置,即地址。 如变量a的地址就是&a。
整理课件
(2)一个变量占据一定字节的存储空间。
在存储空间中存放变量的值。由于变量所 表示的数据可以是除void以外的任意类型的数 据,所以变量在内存中所占的存储空间根据数 据类型的不同而不同。
每一个变量有而且只能有一种类型,变量 的类型决定了该变量在内存中所占的字节数。 在变量进行相关运算时,变量的类型是编译系 统检查运算是否合法的依据。
② 整型常数的后缀
十进制无符号整型常量的范围为0~ 65535,有符号数为32768~32767。
八进制数表示的机器码范围为0~0177777。
十六进制数表示的机器码范围为0X0~ 0XFFFF。
如果希望将整型常量按照长整型常量来 运算,可以使用长整型数的后缀“L”或“l” 来表示。例如,
十进制长整型常量 158L 358000L
(4)转义字符
转义字符是一种特殊的字符常量。转义字符 以反斜线“\”开头,后跟一个或几个字符。转义 字符具有特定的含义,不同于字符原有的意义, 故称“转义”字符。
整理课件
表4-5
转义 字符
\n
常用的转义字符 转义字符的意义
回车换行
转义字 符
转义字符的意义
\r
回车
\t
横向跳到下一制表
\f
走纸换页
位置
(1)直接形式 直接形式即在单引号内直接书写字符。例如'a'
、'b'、''、''、'?‘ (2)八进制形式
八进制形式格式为'\ddd',其中“ddd”表示1~ 3位八进制数,其值代表的是某字符的ASCII值。“\” 是转义字符。八进制形式可以表示所有的字符。例如 '\101'(等于'A'),'\007'(响铃控制字符),'\343' (表示ASCII值为227的字符π)。
整理课件
(3)十六进制形式
十六进制形式格式为'\xhh',其中“hh”表示1 ~2位十六进制数,其值代表的是某字符的ASCII 值,“\”是转义字符,“x”是十六进制前缀。十 六进制形式可以表示所有的字符。例如'\x41'(等 于'A'),'\x07'(响铃控制字符),'\xe3'(表示 ASCII值为227的字符π)。
短整型的类型说明符为short int或short,所占 字节和取值范围均与基本型相同。
整理课件
③ 长整型 长整型的类型说明符为long int或long,在内
存中占4个字节,其取值范围是231~2311,即 2147483648~2147483647。
整理课件
④ 无符号型
无符号型的类型说明符为unsigned。无符号 型又可与上述3种类型匹配而构成。
整理课件
著名的计算机科学家沃斯(Nikilaus Wirth )提出了公式:
数据结构+算法=程序
该公式表明除算法之外,一个程序中的数 据结构是编写程序首先要解决的问题。例4.1中 的“链表”、“树”和“图”就是数据结构中的 重要类型。当然一个好的程序除了应该具备公式 中两个主要因素外,还应该选择合适的程序设计 语言和程序设计方法。
码取值为0~9,A~F或a~f。当十六进制数中 出现a~f或A~F时,数符码中出现字母时字母 的大小写应和前缀相匹配,即要么全部大写, 要么全部小写。十六进制数主要也是用于表示 某整型常量的机器码,所以当表示某数机器码 时,十六进制数前面没有符号;如果有符号, 则是对其所代表的真值取反。如0x23,0x23 代表的真值为35,0x23代表的常量则为35。
无符号基本型。类型说明符为unsigned int或unsigned,取值范围是0~65535。
无符号短整型。类型说明符为unsigned short,与无符号基本型一样。
无符号长整型。类型说明符为unsigned long int 或unsigned long,取值范围为0~2321, 即0~4294967295。
定义变量时应注意以下几点。 (1)变量定义应该位于函数体的数据描述部分。 (2)类型符说明变量从属的类型,有:int、float、 double和char。 (3)修饰符部分可有可无,如int有long、short和 unsigned修饰符。 (4)“[修饰符] 类型符”部分决定了变量的类型 ,确定了变量在内存中所占的字节数。 (5)变量表列部分是所定义变量的变量名,如果定 义多个同一类型变量的话,变量名中间用“,”作 为分隔符构成变量表列。 (6)变量定义的每一项应有空格作为分隔符。 (7)变量定义的结束符是分号。
相关文档
最新文档