数据类型与运算规则

上传人:宝路 文档编号:48191168 上传时间:2018-07-11 格式:PPT 页数:36 大小:451.57KB
返回 下载 相关 举报
数据类型与运算规则_第1页
第1页 / 共36页
数据类型与运算规则_第2页
第2页 / 共36页
数据类型与运算规则_第3页
第3页 / 共36页
数据类型与运算规则_第4页
第4页 / 共36页
数据类型与运算规则_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《数据类型与运算规则》由会员分享,可在线阅读,更多相关《数据类型与运算规则(36页珍藏版)》请在金锄头文库上搜索。

1、第二章 数据类型与运算规则 基本数据类型与特点基本数据类型与特点 各种数据类型表示范围各种数据类型表示范围 常量的表示方法常量的表示方法 变量说明语句变量说明语句 运算符与基本运算规则运算符与基本运算规则本 章 要 点第二章第二章 数据类型和运算规则数据类型和运算规则$1 $1 数据与数据类型数据与数据类型 $2 $2 常量与常量定义常量与常量定义 $3 $3 变量与变量说明变量与变量说明2-12-1 数据与数据类型数据与数据类型数据数据程序操作的对象和产生的结果。数据类型数据类型指数据的内在表现形式,亦指数据在计算机内部 的存储形式(占用的内存单元数量、编码方式、取 值范围等)。常量常量在程

2、序运行过程中不允许改变的量。变量变量在程序运行过程中允许改变的量。基本概念基本概念基本类型字符型 char整型 int浮点型单精度 float双精度 double 指针类型构造类型数组结构 struct联合 union枚举 enum无值类型指针类型C C语言的数据类型语言的数据类型本章C C语言基本数据类型有语言基本数据类型有四种四种:字符型字符型 整型整型 单精度浮点型单精度浮点型 双精度浮点型双精度浮点型char int float double类型说明符C C语言有语言有四种四种类型修饰符:类型修饰符:短短 长长 有符号有符号 无符号无符号short long signed unsign

3、ed类型修饰符基本数据类型基本数据类型决定数据所占存储 空间的大小和数据 的范围类型符号关键字数的表示范围所占位数类型符号关键字数的表示范围所占位数整型字符型实型有无(signed)int16-3276832767 (signed)short16-3276832767 (signed)long32-21474836482147483647 16unsigned int0655353204294967295unsigned longunsigned short16065535有float323.4e-383.4e38 有double641.7e-3081.7e308有signed char8-1

4、28127无unsigned char80255说明:数据类型所占字节数随机器硬件不同而不同:不同类型机器所对应的不同形式整型数据的存储情况2-22-2 常量与常量定义常量与常量定义 整型常量,即整常数(3种形式) 10进制8进制 16进制实型常量,即浮点数(2种形式) 十进制指数 字符常量字符串常量:0 0 9 9 :0 0 7 7 以数字以数字0 0开头开头 :0 0 9,A AF/aF/af f,以以0 0x x或或0X0X开头开头:符号:符号、整数、整数、小数点小数点和小数和小数 :用:用e e或E E和表示指数部分和表示指数部分常量整型常量的不同表示方法:整型常量的不同表示方法:10

5、10进制:进制: 100 -8 0 +123100 -8 0 +1238 8进制:进制: 010 024 0100010 024 01001616进制:进制: 0x38 0x10 0X10 0XFF 0xa0x38 0x10 0X10 0XFF 0xa整型常量的类型:整型常量的类型:1.1.在整型表示范围之内,根据值大小默认类型在整型表示范围之内,根据值大小默认类型2.2.在常量后面加在常量后面加l l或或L L,则认为它是则认为它是long intlong int型型例如:例如:都是都是long long intint型常量型常量1010进制:进制:-123L 0L 432l-123L 0L

6、 432l8 8进制:进制: 010L 024L 0100L010L 024L 0100L1616进制:进制: 0x38L 0x1000L 0XFFl 0xa0000l0x38L 0x1000L 0XFFl 0xa0000l例 30000 为int型65536 为long int 型 整型数据的存储整数占2个字节 1 000 0001 1000 0001 0 000 0001 1000 0001符号位 1:负数 0:正数整型数据在计算机中以 补码形式存储正数的原码、反码和补码相同 1的补码 0 000 0000 0000 0001 32767的补码 0 111 1111 1111 1111 (

7、215-1) 负数 -1原码 1 000 0000 0000 0001 反码 1 111 1111 1111 1110 原码取反 补码 1 111 1111 1111 1111 反码1void main( ) float r, s, v;scanf(“%f“, s=4.0*3.14*r*r ; v=4.0/3.0*3.14*r*r*r ; printf(“s=%f, v=%fn“, s, v); s=4.0*3.14159*r*r ; v=4.0/3.0*3.14159*r*r*r ; # define PI 3.14 # include void main( ) float r, s, v;

8、scanf(“%f“, s=4.0*PI*r*r ; v=4.0/3.0*PI*r*r*r ; printf(“s=%f, v=%fn“, s, v); 例32 符号常量 # define PI 3.14159 2-32-3 变量与变量说明变量与变量说明变量:在程序运行过程中允许改变的量。变量的说明格式: 类型修饰符 类型说明符 变量1,变量2,变量n;例如:int i;char ch, str;long int k=1, m=0x12345678;double x, y=1;变量说明意味着确定了:该变量占用内存单元的数量,数据在内存的表示方式,数据的取值范围。变量决定分配字节数 和数的表示范

9、围合法标识符注意事项:变量必须 先定义,后使用。# include #define PRICE 30 main() int num,total;num=10;total=num*PRICE;printf(“total=%d“,total); 一个变量名只能定义一次。变量一般都定义在函数的开头 ,不能定义在函数的中间或后 面。见名知意,习惯上用小写 。变量: 先定义,后使用先赋值,后引用 # include void main( ) int x, y;x = 3; y = x*x ;printf(“%d”, y ) ; 整型变量(3种形式)实型变量(3种形式)单精度浮点型 float x, y,

10、 z;双精度浮点型 double u, v, w;长双精度浮点型 long double m,n;字符型变量指针与指针变量 根据其范围,分为三类: 基本整型(int) 短整型(short int) 长整型(long int)2byte2byte4byte 为了充分利用变量的表达范围,又可以将变量定义为: 有符号数(signed)(可省略) 无符号数(unsigned)4字节存储 8字节存储 16字节存储main( )main( ) intint i; i;i= 1; i= 1;i=i*2; i=i*2; printf(printf(”nn i=%d i=%d”,i);,i);i=i*3; i=

11、i*3; printf(printf(”nn i=%d i=%d”,i);,i);i=i*4; i=i*4; printf(printf(”nn i=%d i=%d”,i);,i);i=i*5; i=i*5; printf(printf(”nn i=%d i=%d”,i);,i);i=i*6; i=i*6; printf(printf(”nn i=%d i=%d”,i);,i);i=i*7; i=i*7; printf(printf(”nn i=%d i=%d”,i);,i);i=i*8; i=i*8; printf(printf(”nn i=%d i=%d”,i);,i);i=i*9; i=

12、i*9; printf(printf(”nn i=%d i=%d”,i);,i);i=i*10; i=i*10; printf(printf(”nn i=%d i=%d”,i);,i); 期望结果期望结果 i=2i=2 i=6i=6 i=24i=24 i=120i=120 i=720i=720 i=5040i=5040 i=40320i=40320 i=362880i=362880 i=3628800i=3628800实际运行结果实际运行结果 i=2 i=6 i=24 i=120 i=720 i=5040 i=-25216 i=-30336 i=24320产生产生 数据数据 溢出溢出上溢上溢下

13、溢下溢main() float x=0.0; double y=0.0; int i=1; while(i=10000) x=x+100000; y=y+100000; i=i+1; x=x/100000; y=y/100000; printf(“x=%f,y=%fn“,x,y); 运行结果为:x=9998.517578y=10000.00000虽然实型数据的表示形式有两种,但在内存中 均是以指数形式存放有效位数数值范围例: 指数表示3.14159+ 0.314159 + 1规格化: 小数点在第一个 有效数字前面;小数部分 小于1的纯小数字符变量char c1, c2, c3;c1=2;c2=

14、#;c3=A;或c3=65;int i;i=65;或i=A;整型变量和字符变量的 定义和赋值可以互换【 ASCII码范围】通过关键字char来说明例 main() char c1,c2;c1=a;c2=A;printf(“c1=%c,c2=%cn”,c1,c2);printf(“c1=%d,c2=%dn”,c1,c2); 程序输出为: c1=a,c2=A 说明: 字符数据与整型数据之间可以相互赋值 。 c1=97,c2=65 字符数据可以以字符或整型数据两种方 式输出。变量在说明之后,没有固定的初始值,要先赋值 (给定一个初始值),后使用。变量赋初值将变量说明与赋初值合一,在说明变量时同时完

15、成。实例 char cc = a, sex= f ,; int x = 10, y = -10, z;double try = 28.5, w = 1e10;变量赋初值变量赋初值让变量使用之前有值方法int a=5; int a,b,c=5; int a=b=c=5;初始化不是在编 译时进行,而是在程 序运行时完成的。定义变量的同时为其赋值称初始化变量的4个属性:变量名称:编程时使用(进行编程,按名引 用)变量数据类型:编程和运行时使用(决定占 用多少存储单元)变量的值:程序运行时使用(进行运算)变量地址:程序运行时,要将变量的值保存 在计算机的存储单元中,每个存储单元都有唯一的内 存地址。变量在内存中占据的存储

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号