基本数据类型表达式与运算符

上传人:宝路 文档编号:47729188 上传时间:2018-07-04 格式:PPT 页数:83 大小:474.38KB
返回 下载 相关 举报
基本数据类型表达式与运算符_第1页
第1页 / 共83页
基本数据类型表达式与运算符_第2页
第2页 / 共83页
基本数据类型表达式与运算符_第3页
第3页 / 共83页
基本数据类型表达式与运算符_第4页
第4页 / 共83页
基本数据类型表达式与运算符_第5页
第5页 / 共83页
点击查看更多>>
资源描述

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

1、C语言程序设计教程第二章 基本数据类型、运算 符与表达式1C语言程序设计教程本章要求: C语言的数据类型 各种类型数据的定义方法 常量与变量 各种类型数据的混合运算 强制类型变换 重点: 数据类型; 数据的定义方法; 各种类型数据的混合运算2C语言程序设计教程2.1 C语言的数据类型 C语言支持的数据类型非常丰富,它包括:基 本数据类型,构造数据类型,指针类型,空类型 四大类 数据类型构造类型指针类型 *空类型(无值类型) void枚举类型 enum数组类型 结构体类型 struct共用体类型 union基本类型整型 int字符型 char实型(浮点型)单精度实型 float双精度实型 dou

2、ble3C语言程序设计教程2.2 常量、变量和标识符对于基本数据类型量,根据其取值是否可改变 可分为常量和变量两种。 1.常量常量:其值不发生改变的量称为常量。常量可与数据类 型结合起来分类。例如,整型常量、实型常量、字符型 常量、字符串常量和符号常量。在编程过程中,常量是 可以不经说明而直接引用的,而变量则必须要先定义后 使用。 常用常量如下所示:整型常量:25、0、-7;实型常量 :5.6、-6.9;字符常量:a、b。4C语言程序设计教程2.标识符 标识符是用来标识变量名、符号常量名、函数名、数组 名、类型名、文件名的有效字符序列。 用一个标识符来表示一个常量,称之为符号常量。 符号常量在

3、使用之前必须先定义,其一般形式为: #define 标识符 常量 其中#define也是一条预处理命令(预处理命令都以“#“ 开头),称为宏定义命令其功能是把该标识符定义为其 后的常量值。一经定义,以后在程序中所有出现该标识 符的地方均代之以该常量值。一般习惯上符号常量的标 识符用大写字母,变量标识符用小写字母,以示区别。 5C语言程序设计教程例2.1符号常量的使用。#define LENGTH 30 #include void main() int area, width; width=10; area=width*LENGTH; printf(“area=%d”,area);程序运行结果:

4、area=300 程序分析:使用符号常量参与运算,符号常量与变量不同,它的值 在其作用域内不能改变,也不能再被赋值。使用符号常量 的好处是:含意清楚;能做到“一改全改”。 6C语言程序设计教程3.变量 变量,其值可以改变的量称为变量。一个变量应该有一 个名字,在内存中占据一定的存储单元。变量在使用之 前必须进行定义即为每个变量取一个名称(变量名 ),同时规定它的数据类型,以便编译时根据数据类型 分配存储空间。 C语言规定标识符只能由字母、数字和下划线3种字符组 成,且第一个字符必须是字母或者下划线。下面标识符 的写法是合法的,可以作为变量名使用。 Sum,Class_2,data,wang_m

5、ing,_high,a8,AREA,year_mo nth_day 下面是不合法的标识符和变量名: *data1,99sum,%yuan,$BGss,MR.tom,a1b1,s/t 注意,编译系统区分大小写,将它们认为是两个不同的 字符。所以,max和MAX是两个不同的变量。 7C语言程序设计教程注意 建议变量名的长度最好不要超过8个字符。 在选择变量名和其它标识符时应 “见名知意”。 要求对所有用到的变量作强制定义,也就是“先定义, 后使用” 。 变量定义一般放在函数体的开头部分。要区分变量名和 变量值是两个不同的概念。data 变量名56变量值存储单元变量名8C语言程序设计教程 变量名实际

6、上就是以一个名字对应,代表一个地址。在 对程序编译连接时由编译系统给每个变量名分配对应的 内存地址。变量在定义时必须指定其数据类型,以便在 编译时为其分配存储单元。 | float b=123.67;9C语言程序设计教程4.变量赋初值 C语言中可有多种方法为变量提供初值。可以在变量定 义的同时给变量赋以初值的方法。这种方法称为初始化 。在变量定义中赋初值的一般形式为: 类型说明符 变量1= 值1,变量2= 值2,; 例如: int a=68;/*指定a为整型变量,初值为68*/ 也可以使被定义的变量的一部分赋初值。 例如 float b,c,d=7.9; 上式指定b,c,d为单精度实型变量,只

7、对d初始化,其 值为7.9。 如果对几个变量赋予相同的初值,应写为: int e=50,f=50,g=50;10C语言程序设计教程例2.2部分初始化数据 程序运行结果: a=6,b=14,c=8 程序分析: 对定义的整型变量进行部分初始化,然后参与运算 ,并输出结果。#include void main() int a=6,b,c=8;b=a+c;printf(“a=%d,b=%d,c=%dn“,a,b,c ); 11C语言程序设计教程5.变量的地址 在定义了一个变量后,在内存中会分配相应的存储单元 ,将变量的值存储到该单元中。如前所述注意区分变量 名和变量值这两个不同的概念。 例如:int

8、x; float y; x=3; y=3.14159; 2000 2001 2002 2003 2004 2005xy200633.1415912C语言程序设计教程2.3简单数据类型与表示范围 2.3.1 整型数据1.整型常量的表示方法 整型常量就是整常数。在语言中,经常使用的整常数 有三种进制,它们分别是八进制、十六进制和十进制。 八进制前缀为“0”,十六进制前缀为“0x”,十进制无前缀 。 (1)十进制整数。如:123, -456.4。 (2)八进制整数。以0头的数是八进制数。如:0123表示八进制数123,等于十进制数83,- 011表示八进制数-11,即十进制数-9。13C语言程序设计

9、教程(3)十六进制整数。以0x开头的数是16进制数。如:0x123,代表16进制数123,等于十进制数 291 。 -0x12等于十进制数18。 (4)整型常数的后缀:基本整型的长度为16位,十进制无符号整常数的范 围为065535,有符号数为-32768+32767。八进制无符号数的表示范围为00177777。十六进制无符号数的表示范围为0X00XFFFF或0x0 0xffff。如果使用的数超过了上述范围,就必须加上后缀 “L”或“l”变为长整型数来表示。例如:567L (十进制为567)注意:长整数567L和基本整常数567在数值上并无区别 ,但是所占存储空间大小不同。对567L而言,因为

10、是长 整型量,编译系统将为它分配4个字节存储空间。而对 567,因是基本整型,则只分配2个字节的存储空间。 14C语言程序设计教程2.整型变量(1) 整型数据在内存中的存放 形式 数据在计算机内存中是以二进制 形式存放的,例如,定义了一个整 型变量a: int a;/*定义a为整型变量*/ a=11;/*给a附以初值11*/ 由于在内存中数值是以补码表示 的,正整数的补码和它的原码在二 进制形式上是相同的。所以,a 11,在内存中的存放形式如下所示 。 内存中图a 110 0 0 0 0 0 0 0 0 0 0 0 1 0 1 115C语言程序设计教程 负数的补码:将该数的绝对值的二进制形式按

11、位取反后 再加1。 例如:求-11的补码:符号位(2)整型的分类 基本型:类型说明符为int,在内存中占2个字节。 短整量:类型说明符为short int或short。所占字节和取值范 围均与基本型相同。 长整型:类型说明符为long int或long,在内存中占4个字节。16C语言程序设计教程 有符号型:类型说明符为signed;无符号型:类型 说明符为unsigned。 有符号型与无符号型又可与前三种类型匹配而构成 :类型名称类型说明符数值范围字节 数有符号基本型 signed int-32768327672无符号基本型unsigned int0655352有符号短整型 signed sh

12、ort int-32768327672无符号短整型unsigned short int0655352有符号长整型signed long int-2147483648 21474836474无符号长整型 unsigned long int042949672954上面带 的部分表 示其内容可以省略 17C语言程序设计教程(3)整型变量的定义变量定义的格式为:类型说明符 变量名标识符,变量名标识符,.; 说明:允许在一个类型说明符后,定义多个相同类型的变 量,并使用逗号分割变量名中多个变量,使用分号结 束。类型说明符与变量名之间至少用一个空格间隔。 变量定义必须放在变量使用之前。一般 放在函数体的开

13、头部分。 在程序的同一部分,禁止对同一变量进 行重复定义,在书写不同种类型变量定义时,避免 都写在一行上。 对所用到的变量必须进行强制定义,即 “先定义,后使用”。 int a,b,c; /*a,b,c为整型变量*/ long x,y; /*x,y为长整型变量*/18C语言程序设计教程例2.3整型变量的定义与使用 #include void main()long a,b;int x,sum,ave; /*定义整型变量 x,sum,ave*/unsigned y; /*定义无符号整型变量y*/a=9; x=-10;y=20;b=x+a;sum=x+y;ave=(x+y)/2; /*不同类型数据间

14、可进行 运算*/printf(“b=x+a=%ld,sum=%d, average= %dn“,b,sum,ave); 程序运行结果: b=x+a=-1,sum=12,average=6 19C语言程序设计教程(4)整型数据的溢出 每个整型数据都有其自身的数据类型,有其自身所占存 储空间大小,基本整型int定义的变量的最大允许存储值 为32767 例3.4整型数据的溢出 #include void main() int x,y;x=32767;y=x+1;printf(“%d,%dn“,x,y); 程序运行结果: 32767,-32768程序分析:计算结果-32768与实际应该的 结果3276

15、8相差一个符号,为什么呢 ?数据在内存中都是以该数的补码 的二进制形式存放的,32767的补码 为0111 1111 1111 1111,加1后发 生进位,变成1000 0000 0000 0000 ,最高位的1占据了符号位,而它正 好是-32768的补码形式,所以才有 上述输出结果。20C语言程序设计教程2.3.2实型数据1实型数据表示方法实型也称为浮点型。语言中,实数有二种形式:十 进制小数形式和指数形式。 十进制数形式:由数字09和小数点组成。注意,必须有 小数点,且小数点的前面或后面必须有数字。例如:3.1415926,0.0、0.1、7.0、780.、-25.860 等均为合法的实数。 指数形式:由十进制数(基数)、加阶码标志“e”或 “E”以及指数(阶码,只能为整数,可以带符号)组成。其一般形式为:a E n(a为十进制数基数,n为十进制整数阶码 )其值为 a*10n。如:1.6E2 (等于1.6*102) 注意:阶码标志e(或E)之前必须有数字,且e后的指数 必须为整数。 21C语言程序

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


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

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