第2章C语言的数据类型、运算符和表达式 2,1C语言的数据类型 2,2常量与变量 23C语言的基本数据类型 2,4C语言的运算符与表达式
第2章 C语言的数据类型、运算符和表达式 2.1 C语言的数据类型 2.2 常量与变量 2.3 C语言的基本数据类型 2.4 C语言的运算符与表达式
21c语言的数据类型 所谓数据结构指的是数据的组织形式。不同的计算机语 言所允许定义和使用的数据结构是不同的。C语言中的数据 结构是以数据类型的形式出现的 整型 字符型 实型(浮点型)单精度型 基本类型 双精度型 枚举类型 数组类型 数据类型{构造类型{结构体类型 共用体类型 指针类型 空类型
2.1 C语言的数据类型 所谓数据结构指的是数据的组织形式。不同的计算机语 言所允许定义和使用的数据结构是不同的。C语言中的数据 结构是以数据类型的形式出现的。 数据类型 基本类型 构造类型 指针类型 空类型 整型 字符型 实型(浮点型) 枚举类型 数组类型 结构体类型 共用体类型 单精度型 双精度型
22常量与变量 221常量和符号常量 在程序执行过程中,其值始终不变的量称为常量 常量在程序中以两种形式出现:①直接使用常量的值, ②以宏定乂的形式出现。前面一种常量是可以不经说明而直 接引用的,称为直接常量或字面常量,后面一种常量用一个 标识符代表,称为符号常量 符号常量的格式为: # define标识符常量 其中# define是一条预处理命令(预处理命令都以#开头) 称为宏定义命令(在第九章预处理程序中将进一步介绍) 其功能是把该标识符定义为其后的常量值。一经定义,以后 在程序中所有出现该标识符的地方均代之以该常量值。习惯 上符号常量的标识符用大写字母,变量标识符用小写字母, 以示区别
2.2 常量与变量 2.2.1 常量和符号常量 在程序执行过程中,其值始终不变的量称为常量。 常量在程序中以两种形式出现:① 直接使用常量的值, ② 以宏定义的形式出现。前面一种常量是可以不经说明而直 接引用的,称为直接常量或字面常量,后面一种常量用一个 标识符代表,称为符号常量。 符号常量的格式为: #define 标识符 常量 其中#define是一条预处理命令(预处理命令都以#开头), 称为宏定义命令(在第九章预处理程序中将进一步介绍), 其功能是把该标识符定义为其后的常量值。一经定义,以后 在程序中所有出现该标识符的地方均代之以该常量值。习惯 上符号常量的标识符用大写字母,变量标识符用小写字母, 以示区别
【例2-1】符号常量的定义与使用 #definer 2 /*将半径定义为符号常 量r*/ # define pi3.1415926*将圆周率定义为符号常 量pi*/ main o i float area area=PI水R*R printf(“area=%f”,area)
【例2-1】符号常量的定义与使用。 #define R 2 /*将半径定义为符号常 量r*/ #define PI 3.1415926 /*将圆周率定义为符号常 量pi*/ main () { float area; area=PI*R*R; printf(“area=%f”,area); }
符号常量的说明: 1)符号常量名要用大写,变量要用小写,以示区 别。程序中,不提倡使用很多的常量。并且,应尽量使 用“见名知义”的符号常量和变量 (2)符号常量与变量不同,它的值在其作用域内不 能改变,也不能再被重新赋值。 (3)使用符号常量后,使得程序在需要改变常量的 值时能做到“一改全改”。例如在例2-1中,如果需要改 变圆的半径,从而计算相应的面积,只需要改动一处即 可
符号常量的说明: (1)符号常量名要用大写,变量要用小写,以示区 别。程序中,不提倡使用很多的常量。并且,应尽量使 用“见名知义”的符号常量和变量。 (2)符号常量与变量不同,它的值在其作用域内不 能改变,也不能再被重新赋值。 (3)使用符号常量后,使得程序在需要改变常量的 值时能做到“一改全改” 。例如在例2-1中,如果需要改 变圆的半径,从而计算相应的面积,只需要改动一处即 可
222变量 在程序执行过程中,取值可以改变的量称为变量 C规定,标识符只能是由字母(A~Z,a~z)、数字(0 9)、下划线()组成的字符串,并且其第一个字符必须是字 母或下划线。 C语言的标识符可以分为三类: (1)关键字(32个) (2)预定义的标识符 (3)用户自定义标识符
2.2.2 变量 在程序执行过程中,取值可以改变的量称为变量。 C 规定,标识符只能是由字母(A~Z,a~z)、数字(0~ 9)、下划线(_)组成的字符串,并且其第一个字符必须是字 母或下划线。 C语言的标识符可以分为三类: (1)关键字(32个) (2)预定义的标识符 (3)用户自定义标识符
23c语言的基本数据类型 23.1整型数据 整型数据包括整型常量和整型变量 1整型常量 整型常量就是整常数。在C语言中,使用的整常数按不 同的进制区分,有八进制、十六进制和十进制三种表示: (1)十进制整常量 (2)八进制整常量 (3)十六进制整常量
2.3 C语言的基本数据类型 2.3.1 整型数据 整型数据包括整型常量和整型变量。 1 整型常量 整型常量就是整常数。在C语言中,使用的整常数按不 同的进制区分,有八进制、十六进制和十进制三种表示: (1)十进制整常量 (2)八进制整常量 (3)十六进制整常量
2整型变量 (1)整型变量的分类 1)基本整型:类型说明符为int,在内存中占2个字节, 其取值为基本整常数 2)短整量:类型说明符为 short int或 short。所占字节 和取值范围均与基本型相同 3)长整型:类型说明符为1 ong int或long,在内存中占 4个字节,其取值为长整常数 4)无符号型:类型说明符为 unsigned。无符号型又可与 上述三种类型匹配而构成无符号基本整型、无符号短整型、 无符号长整型,见表2-1。 各种无符号类型量所占的内存空间字节数与相应的有符 号类型量相同。但由于省去了符号位,故不能表示负数。表 2-1列出了 Turbo c中各类整型量所分配的内存字节数及数的 表示范围
2 整型变量 (1)整型变量的分类: 1)基本整型:类型说明符为int,在内存中占2个字节, 其取值为基本整常数。 2)短整量:类型说明符为short int或short。所占字节 和取值范围均与基本型相同。 3)长整型:类型说明符为long int或long,在内存中占 4个字节,其取值为长整常数。 4)无符号型:类型说明符为unsigned。无符号型又可与 上述三种类型匹配而构成无符号基本整型、无符号短整型、 无符号长整型,见表2-1。 各种无符号类型量所占的内存空间字节数与相应的有符 号类型量相同。但由于省去了符号位,故不能表示负数。表 2-1列出了Turbo C中各类整型量所分配的内存字节数及数的 表示范围
(2)整型变量的说明: 变量说明的格式为 类型说明符变量名标识符,变量名标识符, 例如: int a,b. c: (a,b,c为整型变量) long[int]x,y;(x,y为长整型变量) unsigned p, g; (p,q为无符号整型变量) short[int]i;(i为短整型变量) 在书写变量说明时,应注意以下几点 1)允许在一个类型说明符后,说明多个相同类型的变 量。各变量名之间用逗号间隔。类型说明符与变量名之间 至少用一个空格间隔。 2)最后一个变量名之后必须以“;”号结尾 3)变量说明必须放在变量使用之前。一般放在函数体 的开头部分
(2)整型变量的说明: 变量说明的格式为: 类型说明符 变量名标识符,变量名标识符,...; 例如: int a,b,c; (a,b,c为整型变量) long [int] x,y; (x,y为长整型变量) unsigned p,q; (p,q为无符号整型变量) short [int] i; (i为短整型变量) 在书写变量说明时,应注意以下几点: 1)允许在一个类型说明符后,说明多个相同类型的变 量。各变量名之间用逗号间隔。类型说明符与变量名之间 至少用一个空格间隔。 2)最后一个变量名之后必须以“ ; ”号结尾。 3)变量说明必须放在变量使用之前。一般放在函数体 的开头部分
232实型数据 实型数据包括实型常量和实型变量。 1实型常量 实型也称为浮点型。实型常量也称为实数或者浮点数 在C语言中,实数只采用一种进制,即十进制。它有二种 形式:十进制小数形式和指数形式。 (1)十进制小数形式: 由正负号、数码0~9和小数点组成。:+29.56, 56.33,0.0,,25,5.789,0.13,5.0,300.,-267.8230 等均为合法的实数。(正号可以省略) (2)指数形式: 由十进制数,加阶码标志“e或“E?以及阶码(只能 为整数,可以带符号)组成 注意字母e或E之前必须有数字(整数、实数均可),之 后必须有整数
2.3.2 实型数据 实型数据包括实型常量和实型变量。 1 实型常量 实型也称为浮点型。实型常量也称为实数或者浮点数。 在C语言中,实数只采用一种进制,即十进制。它有二种 形式:十进制小数形式和指数形式。 (1) 十进制小数形式: 由正负号、数码0~9和小数点组成。:+29.56, - 56.33,0.0,.25,5.789,0.13,5.0,300.,-267.8230 等均为合法的实数。(正号可以省略) (2) 指数形式: 由十进制数,加阶码标志“ e”或“E”以及阶码(只能 为整数,可以带符号)组成。 注意字母e或E之前必须有数字(整数、实数均可),之 后必须有整数