第2章 基本类型数据及其运算

上传人:今*** 文档编号:107020544 上传时间:2019-10-17 格式:PPT 页数:98 大小:2.56MB
返回 下载 相关 举报
第2章 基本类型数据及其运算_第1页
第1页 / 共98页
第2章 基本类型数据及其运算_第2页
第2页 / 共98页
第2章 基本类型数据及其运算_第3页
第3页 / 共98页
第2章 基本类型数据及其运算_第4页
第4页 / 共98页
第2章 基本类型数据及其运算_第5页
第5页 / 共98页
点击查看更多>>
资源描述

《第2章 基本类型数据及其运算》由会员分享,可在线阅读,更多相关《第2章 基本类型数据及其运算(98页珍藏版)》请在金锄头文库上搜索。

1、第二章 基本类型数据及其运算,计算机程序的功能是对数据进行加工和处理。通常,一个程序应包括对数据的描述和对数据处理的描述。,对数据的描述,即数据结构。对数据处理的描述,即算法。在C语言中,数据结构以数据类型的形式出现,算法由语句序列实现。,第2章 基本类型数据及其运算,基本类型数据及其运算,2.3 整型数据,2.2 常量与变量,2.1 C 语言的数据类型,2.4 实型数据,2.5 字符型数据,2.6 运算符与表达式,2.7 数据的类型转换,2.8 数据的输入与输出,2.9 顺序结构程序设计,2.1 C语言的数据类型,2.1 c语言的数据类型,数据的值有两种不同的表现形式:常量和变量。 常量的类

2、型从数值能得到,变量需要命名、规定其类型,确定其存储空间大小、位置。,2.2.1 标识符,在C语言中,标识符就是常量、变量、数组、函数、类型和语句的名称,分为关键字、预定义标识符和用户标识符3种类型。,1. 数据类型关键字 (1) 基本数据类型(5个) void char int float double (2) 类型修饰关键字(4个) short long signed unsigned,(3) 复杂类型关键字(5个) struct union enum typedef sizeof (4) 存储级别关键字(6个) auto static register extern const vola

3、tile,ANSI C标准C共有32个关键字,1999年ISO推出的C99标准新增了5个关键字(见附录C)。根据关键字的作用,可以将关键字分为数据类型关键字和流程控制关键字两大类。,2. 流程控制关键字 (1) 跳转结构(4个) return continue break goto (2) 分支结构(5个) if else switch case default (3) 循环结构(3个) for do while C99新增5个关键字: inline restrict _bool _Complex _Imaginary,2.2.1 标识符,2.预定义标识符 预定义标识符通常包括C编译系统提供的

4、标准库函数名(如printf、scanf等)和编译预处理命令名(如define 、include等)。,2.2.1 标识符,在C语言中,预定义标识符也有特定的含义。虽然预定义标识符也可以作为用户标识符使用,但这样会失去系统规定的原意。,3.用户标识符 C程序中用于标识变量、符号常量、数组、函数和数据类型等对象的一个字符序列,统称为用户定义标识符。 C语言规定用户标识符只能由字母、数字和下划线组成,且以字母或下划线开头。,2.2.1 标识符,2.2.1 标识符,说明: (1)C语言中同一字母的大小写,被认为是两个不同的字符。例如: total、TOTAL、ToTaL、tOtAl 不同的用户标识符

5、。,(2)C语言的关键字不能用作用户标识符。例如: int 不合法 Int、INT、iNt 合法,(3)用户标识符的命名要见名知意。 例如: name/xm(姓名)、sex/xb(性别)、age/nl(年龄)。,2.2.1 标识符,(4)避免使用易混字符。 例如: 1、l、i;0、o、O;p、P;x、X;2、z、Z等。,file6、stu_name、DeFault、_9、xandy 正确 6file、stu-name、default、-9、x&y 不正确,2.2.2 常量,直接常量的类型从字面上就能够区分出来,如: 125 为整型常量,12.56 为实型常量, a 为字符常量,“china“

6、为字符串常量。,1.直接常量 直接常量即常数,分为整型常量、实型常量、字符常量和字符串常量。,定义:程序运行时其值不能改变的量。 分类: 直接常量:在程序中直接使用的数据原型。 符号常量:用标识符来代表常量。,2. 符号常量,定义格式: #define 符号常量 常量 (后无;) 一般用大写字母 不是C语句,只是预处理命令 编译时先由系统替换为它所代表的常量,再进行编译,#define LEN 5 void main( ) float c,s; c= 2* LEN * 3.14 ; s=LEN*LEN*3.14 ; printf(“c=%f,s=%fn“,c,s); ,【例2-1】 求半径为5

7、的圆的周长和面积。,方法1:在程序中找到所有的圆周率3.14,直接修改多次;,方法2:使用符号常量,只做一次修改。,2.2.2 常量,使用符号常量的好处如下: (1)含义清楚。 在程序中有些常量具有特定含义,用符号常量名代表它,含义清楚,提高程序的可阅读性。 (2) 一改全改。,2.2.3 变量,变量代表内存中具有特定属性的一个存储空间,用来放数据,其中的数据称为变量的值。在程序运行期间,变量值是可以改变的。,编译系统将对每一个变量根据它的类型分配相应字节的连续内存单元,称为变量存储空间。,每个变量都必须有一个名字,变量名实际上是以一个名字代表一个内存地址。,把这几个内存单元地址中较低的地址称

8、为变量地址。变量地址可用“&变量名”求得。,2.2.3 变量,变量名、变量地址、变量存储空间和变量值之间 的关系如图2-2所示。,2.2.3 变量,1.变量定义 在语言中,要求对所有用到的变量必须先定义、后使用。 变量定义的一般格式如下: 类型说明符 变量名1,变量名2,变量名n; 例如: int i,j,k; float x,y,z;,2.2.3 变量,2.变量赋值 变量赋值有如下几种方式。 (1)变量赋初值。定义变量时直接赋值,也称为变量的初始化。例如: int a=10,b=9,c=6; float x=3.0,y=1.0,z=2.0;,注:不能将同初值的变量赋初值时写成以下形式: in

9、t a=b=c=6; 只能写成: int a=6, b=6, c=6,2.3 整型数据,整型数据整型数据包括整型常量和整型变量。 2.3.1整型常量 整型常量即整数,在语言中有3种表示形式:,十进制形式:与数学上的整数表示相同。例如: 12, -100, 0,八进制形式:在数码前加数字0,数码范围0-7。 例如: 012=10(十进制),十六进制形式:在数码前加0X(数字0和字母X,大小写均可),数码范围0-9,a,b,c,d,e,f(大写也可)。 例如: 0x12=18(十进制) 0xab=171(十进制),2.3 整型数据,2.3.2 整型变量 1. 整型数据存放形式 整型数据在内存中以二

10、进制补码形式存放。,原码:最高位存放数的符号(0为正,1为负),其余位 以二进制形式存储数值部分。,反码:正数的反码是原码本身;负数的反码为对原码 按位(除符号位外)取反。,补码:正数的补码与原码相同;负数的补码等于其反 码加1(在最低位加1)。,2.3 整型数据,例如:290和-290的原码、反码和补码如图2-3所示。,2.3 整型数据,2. 整型变量的分类 根据占用内存字节数的不同,整型变量分为: (1)基本整型(类型关键字为int)。 (2)短整型(类型关键字为short int)。 (3)长整型(类型关键字为long int)。,Turbo C 2.0和Turbo C+ 3.0为sho

11、rt和int分配2个字节,为long分配4个字节; VC+ 6.0为short分配2个字节,为int和long分配4个字节。,2.3 整型数据,3.整型变量的符号属性 (1)有符号整型数据。 有符号整型数据的最高位为符号位,符号位为0表示正数,符号位为1表示负数。,有符号型又分为: 有符号基本整型(signed int) 有符号短整型(signed short int) 有符号长整型(signed long int),2.3 整型数据,(2)无符号整型数据。 无符号整型数据表示的都是正数,其最高位不是符号位而是数值位。,无符号型又分为: 无符号基本整型(unsigned int) 无符号短整型

12、(unsigned short int) 无符号长整型(unsigned long int),2.3 整型数据,4.整型数据值域 整型数据所占字节数和数值范围如表2-1所示。,2.3 整型数据,有符号和无符号整型数据在2个字节中存放形式如图2-4和图2-5所示。,2.4 实型数据,实型数据包括实型常量和实型变量。 2.4.1实型常量 有两种表示形式:,十进制形式:由数字和小数点组成,小数点不能单独出现,指数形式:由“十进制小数” + “ e(或E)” + “十进制数整数” 三部分组成,e或E的两边必须有数,且其后面必须为整数。,例如: 3.4 4. .3 .0 0. 0.0,例如: 12.5e

13、-6 表示12.510-6,十进制小数,e(或E),十进制数整数,实型常量的类型:默认为double型,后面加F(或f),则表示该数是float类型。 例如:3.5f、1e2F,2.4 实型数据,0.235e4、24458.6 e-4、5.7854 e7 合法 125e4.5、e4、.e4、e 不合法,123.456可以写成: 123.456e0、12.3456e1、1.23456e2、 0.123456e3、1234.56e-1 等。 其中: 1.23456e2 规范化的指数形式,2.4 实型数据,2.4.2实型变量 实型数据的存放形式 实数可以写成: N = M2E 其中:M称为N的尾数,

14、E称为N的阶码, M前面的正、负号称为数符。,系统把实型数据的数符、尾数和阶码分别存放,以float型为例,实型数据在其中存放形式如图2-6所示。,2.4 实型数据,2.实型变量分类 C语言中实型变量有3种类型: (1)单精度型。类型关键字为float。 (2)双精度型。类型关键字为double。 (3)长双精度型。类型关键字为long double。 实型数据所占字节数及数值范围如表2-2所示。,字符型char,分配 1 Byte 字符型数据是指字母、数字、各种符号等用ASCII值表示的字符,如a,ASCII值为01100001,因字符的ASCII值为整数,故可像整数一样参与整数相关的运算和

15、处理。,ASCII字符集,所有可用字符256个,每个字符有唯一的ASCII 码值。其中: 0-9 升序排列 A-Z 升序排列 a-z 升序排列,2.5 字符型数据,2.5 字符型数据,字符型数据包括字符常量和字符变量。 2.5.1 字符常量,可视字符常量 : 单引号括起来的单个可视字符 如:a、A 、+ 、3、 转义字符常量:以反斜杠“ ”开头后跟规定的单个字符或数字 如:n 101 x41,一个字符可有多种表示方法: 65(十进制)=0x41(十六进制)=0101(八进制) 字符A可以表示为A、x41、101 、65、0x41、0101。,2.5 字符型数据,常用转义字符见表2-3所示。,2

16、.5.2 字符变量,字符变量在内存中占1个字节的存储空间。 用关键字char来定义,例如: char ch1,ch2; ch1=A; ch2=a; / 给字符变量赋值 将一个字符常量存储到一个字符变量中,实际上是将该字符的ASCII码值存储到内存单元中。,2.5.2 字符变量,字符型数据存储形式与整数的存储形式一样,语言允许字符型数据与整型数据相互转换。,【例2-2】字符型数据既可以字符形式输出,也可以整数形式输出。 #include int main() char ch1,ch2; ch1=A; ch2=97; printf(“ch1=%c,ch2=%cn“,ch1,ch2); printf(“ch1=%d,ch

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

当前位置:首页 > 高等教育 > 大学课件

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