[研究生入学考试]C语言强第03章数据类型、运算符与表达式
第三章 第三章 数据类型、运算符与表达式 3.1 C语言的数据类型 3.2 常量和变量 3.3 整型数据 3.4 实型数据 3.5 字符型数据 3.6 变量赋初值 3.7 各类数值数据之间的混合运算 3.8 算术运算符和算术表达式 3.9 赋值运算符和赋值表达式 3.10 逗号运算符和逗号表达式 3.1 C的数据类型 3.2 常量与变量 3.2.1常量和符号常量 1.常量的概念 常量:在程序运行过程中,其值不能被改变的量。 2.常量的分类(1)整型常量(如12、0、-3为整型常量) (2)实型常量(4.6、-1.23为实型常量) (3)字符常量( ’a’、’d’字符常量) (4)符号常量:用一个标识符代表的常量。 1)符号常量定义格式 #define 常量符号名 常量 2)符号常量不同于变量,它的值在其作用 域内不能改变,也不能再被赋值; 例 3.1: #define PRICE 30 main( ) { int num,total; num=10; total=num*PRICE; printf(“total=%d”,total); } 使用符号常量的好处: (1)含义清楚,见名知义,使用程序更加清楚易读; (2)在需要改变一个常量时能做到“一改全改”,便于程序的修改; 3.2.2变量 1.变量的概念:在程序运行时其值可以改变的量称为变量。 2.变量的两个要素: (1)变量名。每个变量都必须有一个名字──变量名,变量命名遵循标识符命名规则。 (2)变量值。在程序运行过程中,变量值存储在内存中。在程序中,通过变量名来引用变量的值。 C语言中变量:“先定义,后使用”。也就是说,C要求对所有用到的变量做强制定义。 变量名和变量值之间的联系和区别 关于标识符(identifier)组成字符的规定: (1)C语言规定标识符只能由字母、数字和下划线三种字符 组成,且第一个字符必须字母或下划线。 例:合法的标识符: sum,average,_total,lotus_1_2_3,BASIC 不合法的标识符 M.D.John,¥123,#33,3D64,a>b (2) C语言中,区分大小写字母,大写字母和小写字母被认 为是两个不同的字符。 例:sum和SUM认为为不同的标识符。 一般情况下,变量名采用小写字母表示。 (3)关于标识符长度的规定: Turbo C允许32个字符,有的系统如IBM PC和MS C取8个字符,如果变量名长度超过8个,只有前8个有效,后面的不被识别。例如: student_name和student_number被认为同一变量 注意:这种类型的错误,系统在编译时不会报错。 (4) C语言的关键字不能用作变量名。 标识符命名的良好习惯──见名知意: 所谓“见名知意”是指,通过变量名就知道变量值的含义。通常应选择能表示数据含义的英文单词(或缩写)作变量名,或汉语拼音字头作变量名。 例如,name/xm(姓名)、sex/xb(性别)、age/nl(年龄)、salary/gz(工资)。 3.3 整型数据 3.3.1整型常量的表示方法 整型常量的表示方法有三种: 1)十进制整数。如123, -456, 0; 2)八进制整数。以0开头的数是八进制。如0123, -011; 3)十六进制整数。以0x开头的数是十六进制数。如 0x123, -0x18。 3.3.2整型变量 数据在内存中是以二进制形式存放的。微机上使用的 C编译系统,每一个整型变量在内存中占用2个字节。例: int i; i=10; 实际使用中,整型变量的数值是以补码形式存放的。 正数的补码:正数的补码和其原码的形式相同。例: +10 原码 补码 负数的补码:绝对值的二进制形式,按位取反再加1 -10 10的原码 取反 再加1得 -10的补码 2.整型变量的分类 3.整型变量的定义 对于变量的定义,一般是放在一个函数的开头部分的声明部分(子函数放在子函数的声