第3章数据类型、运算符.ppt
《第3章数据类型、运算符.ppt》由会员分享,可在线阅读,更多相关《第3章数据类型、运算符.ppt(66页珍藏版)》请在三一文库上搜索。
1、第三章 数据类型、运算符 与表达式,学习目标 了解c语言的数据类型 理解常量与变量 掌握几种基本的数据类型:整型、浮点型、字符型 掌握不同类型数据间的混合运算 掌握算术、赋值、逗号运算符,难点 符号常量 变量命名 字符常量与字符串常量 自增、自减运算符 逗号运算符,3.1 C语言的数据类型,算法处理的对象是数据,而数据是以某种特定的形式存在的,不同的数据之间往往还存在某些联系。 数据结构指数据的组织形式。 不同的计算机语言所允许定义和使用的数据结构是不同的。 处理同一类问题,如果数据结构不同,算法也会不同。在考虑算法时,必须注意数据结构。,3.1 C语言的数据类型,3.2 常量与变量,3.2.
2、1 常量和符号常量 常量:在程序运行过程中,其值不能被改变的量。 常量类型 字面常量(直接常量):从字面形式即可判别 -1,0,1,2 整型常量 1.1,-1.1,4.6 实型常量 a,d 字符型常量,3.2.1 常量和符号常量,符号常量:用一个标识符代表一个常量。 格式:#define 常量名 字面常量 #define PRICE 30 #define PI 3.1415926,3.2.1 常量和符号常量,例:从键盘输入圆的半径,计算并输出圆面积与周长。,#include #define PI 3.14 void main() float r=0,s=0,c=0; scanf(“%f“, ,
3、3.2.1 常量和符号常量,使用符号常量的好处: 含义清楚 一改全改 注意: 作为常量,符号常量的值在其作用域内不能改变,也不能再被赋值。 习惯上,符号常量名用大写。,3.2.2 变量,变量:程序运行期间值可以改变的量。 变量在内存中占据一定的存储单元,在存储单元中存放变量的值。 一个变量有一个变量名。 注意变量名和变量值的区别: 变量名是一个符号地址,在程序编译时由系统给每个变量名分配一个内存地址。在程序中从变量中取值,实际上是通过变量名找到相应的内存地址,从其存储单元中读取数据。,3.2.2 变量,标识符:用来标识变量、符号常量、函数、数组、类型等数据对象的有效字符序列。 简单的说,标识符
4、就是一个名字。 C语言规定:标识符只能由字母、数字或下划线组成,且第一个字符必须为字母或下划线。 正确:zzia, zzia123, _zzia, zzia_123 错误:*zzia*, 123zzia123, zzia-123,3.2.2 变量,注意: C语言区分大小写,大写字母和小写字母被认为是两个不同的字符。 Zzia与zzia是不同的标示符 变量名不能与关键字相同。 一般变量名用小写字母表示。 不同系统对标识符的长度规定不同。假如长度超出规定长度,超出部分将不被识别。 student_name与student_number 标识符的命名应做到见名知意。,3.2.2 变量,变量必须先定义
5、,后使用。目的: 保证程序中变量名使用正确; 为变量指定类型,在编译时系统为其分配相应的存储单元; 编译时,可以对变量将进行的运算进行合法性检查。,3.3 整型数据,3.3.1整型常量的表示方法 整型常量即整常数。 C语言中整常数可以用以下三种形式表示: 十进制整数 八进制整数:以数字0开头 012,相当于十进制数10 十六进制整数:以0x开头 -0x12,相当于十进制数-18,3.3.2 整型变量,1.整型数据在内存中的存放形式 整型数据在内存中是以二进制形式存放的。 整型变量在内存中占2个字节(基本整型)。 int i; i=3; 注意:不同的编译系统为整型数据分配的字节数是不同的。 Vi
6、sual C+6.0分配4个字节,3.3.2 整型变量,数值是以补码表示的。 正数的补码和其原码形式相同。 10的补码0000000000001010 求负数的补码:将该数的绝对值的二进制形式按位取反再加1。 求-10的补码: 绝对值:10 二进制:0000000000001010 取 反:1111111111110101 加 1: 1111111111110110,3.3.2 整型变量,整数的存储单元中,最左面一位表示符号,如果为0,表示数值为正,如果位1,表示数值为负。 整型变量的取值范围? -3276832767,即-215(215-1),3.3.2 整型变量,2.整型变量的分类 基本类
7、型符为int。 根据数值的范围可分为基本整型、短整型和长整型。 基本整型,int 短整型,short int或short 长整型,long int或long,3.3.2 整型变量,2.整型变量的分类 在实际应用中,变量的值常常是正的。为了充分利用变量的表数范围,可将变量定义为无符号类型。 对以上三种类型都可以加上unsigned,指定为无符号数。这样存储单元中所有的二进制位都用作存放数本身,不包括符号。 int a; unsigned in b; a的数值范围为-3276832767,b的数值范围为065535。,3.3.2 整型变量,2.整型变量的分类 C语言并没有规定各类数据所占内存的字节
8、数,只要求long型数据长度不短于int型,short型不长于int型。 具体由编译系统决定。,3.3.2 整型变量,3.整型变量的定义 对变量的定义,通常放在函数开头部分的声明部分。,例3.2 #include “stdio.h“ void main() int a,b,c,d; unsigned u; a=12;b=-24;u=10; c=a+u;d=b+u; printf(“%d,%dn“,c,d); ,3.3.2 整型变量,4.整型数据的溢出,#include void main() int a, b; a=32767; b=a+1; printf(“%d, %d”, a, b); 输
9、出:32767,-32768,3.3.3 整型常量的类型,1. 值在-3276832767之间的,认为是int型,可以赋给int型和long int型变量。 2. 值超出上述范围,认为是长整型,可以赋给long int型变量。 3. 如果short和int在内存中长度相同,int型常量也可以赋给short int型变量。,3.3.3 整型常量的类型,4.一个整型常量后面加一个字母u或U,认为是unsigned int型。 5.一个整型常量后面加一个字母l或L,认为是long int型。,3.4浮点型数据,3.4.1浮点型常量的表示方法 浮点数即实数,有两种表示形式: 十进制小数形式 指数形式,
10、3.4.1浮点型常量的表示方法,2. 指数形式 如123.456可表示为1.23456e2(规范化的指数形式),12.3456E1,0.123456e3 注意: e(E)之前必须有数字 且e(E)后面必须为整数 一个浮点数在用指数形式输出时,是按规范化的指数形式输出的。,3.4.2 浮点型变量,1. 浮点型变量在内存中的存放形式 一个浮点型数据在内存中占4个字节(单精度浮点型),按指数形式存储。 系统把浮点型数据分成小数和整数两部分,分别存放。,3.4.2 浮点型变量,2.浮点型变量的分类 单精度, float 双精度, double 长双精度,long double,3.4.2 浮点型变量,
11、3.浮点型数据的舍入误差 浮点型变量的有效数字位数有限。,#include void main() float a,b; a=123456.789e5; b=a+20; printf(“%fn“,b); ,3.4.3 浮点型常量的类型,C编译系统将浮点型常量作为双精度来处理。 计算:f=2.456789*4523.65 系统将2.456789和4523.65按双精度数据存储并计算,得到双精度结果,然后取前7位赋给f。 如果在数字的后面加字母f或F,如1.65f,系统会按单精度处理。 一个浮点型常量可以赋给一个float型、double型和long double变量,系统根据变量的类型截取相应有
12、效长度。,3.5 字符型数据,3.5.1字符常量 用单撇号括起来的一个字符。如a、b、A。 注意:a和A是不同的字符常量。 转义字符:以开头的字符常量。 注意表3-3: n,”,ddd, xhh 104表示什么? x44表示什么?,3.5.2 字符变量,字符变量:用于存放字符常量,只能存放一个字符,在内存中占1个字节。 字符变量的定义 格式:char 变量名 char c1,c2; 字符变量的赋值 c1=a;c2=n;,3.5.3 字符数据在内存中的存储形式 及使用方法,将一个字符常量放到一个字符变量中,实际上是把该字符的ASC代码放到存储单元中。 由于字符数据的存储形式与整数相同,所以字符数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据类型 运算
链接地址:https://www.31doc.com/p-2254705.html