第2章 数据类型.doc

上传人:枫** 文档编号:547934357 上传时间:2022-11-16 格式:DOC 页数:15 大小:565KB
返回 下载 相关 举报
第2章 数据类型.doc_第1页
第1页 / 共15页
第2章 数据类型.doc_第2页
第2页 / 共15页
第2章 数据类型.doc_第3页
第3页 / 共15页
第2章 数据类型.doc_第4页
第4页 / 共15页
第2章 数据类型.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

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

1、第二章 数据类型、运算符和表达式本章首先介绍整型、实型和字符型概念。常量和变量,整型常量、实型常量、字符型常量、字符串常量和符号常量,整型变量、实型变量和字符型变量。其次介绍了C语言的基本运算符和表达式。详细讲解算术运算符、赋值运算符、逗号运算符的优先级、结合性及使用。详细讲解算术表达式、赋值表达式、逗号表达式,以及运算时各种数据类型转换问题等。2.1 C语言的字符集和保留字2. 1. 1 C语言的字符集1、字母:大、小写英文字母,注意C程序中严格区分大小写字母,如 A和a是不同的字符。2、数字:、。3、图形符号:29个图形(可见)符号,即 ! # % & ( ) - + * / = | ,

2、. ; : ? 主要用作各种运算符。4、空白符转义字符:包括空格符、制表符、换行符等。“ ”代表空格,程序中有时需要用到某些不可见或难以打印的字符,C语言中采用转义字符来表示,如:“n”表示一个换行符;字符被称为转移符,表示其后的字符n具有特定的含义。2. 1. 2保留字和词法约定C语言中基本的词法单位是单词,共有6 类单词:1、标识符 用于标识变量名、符号常量名、数组名、函数名、类型名、文件名的有效字符序列。(标准C 规定有效长度为前31个字符。 )2、保留字 具有特定意义的字符串,通常也称为关键字。3、运算符 实现各种运算功能。由一个或多个字符组成。与变量和函数一起组成表达式。4、分隔符

3、有逗号和空格,保留字标识符间必须有空格分隔。5、常量 有数字常量、字符常量、字符串常量、符号常量和转义字符。6、注释符 以“/*”开头,以“*/”结尾,中间有其他字符。 1、标识符(1)标识符由字母(A Z,a z)、数字(0 9)和下画线( _ )组成.(2)标识符的首字符必须是字母和下画线。(3)标识符长度可以是一个或多个字符。但只前8 个有效。(4)标识符不能和C语言的保留字及系统标准库函数同名。(5)以下画线开头的标识符通常作系统内部函数和变量名。(6)标识符区分大小写。(7)标识符可随意,但命名尽量有意义,便于阅读。合法的标识符: sum, name NAME不合法的标识符:12a

4、以数字开头 #we以#开头 num$1包含$字符 sum 1中间有空格2. 1. 3 C语言的保留字保留字又称关键字,指具有特定含义、专门用作系统的特定成分的一类标识符。标准语言中共有个关键字,按用途分为类:1、数据类型:如 int、 long、 short、 float、double、char、unsigned、signed、const、void、volatile、enum、struct、union、 等2、语句定义流程控制:如 if、else、switch、case、do、while、for、goto、break、continue、return、default、typedef等 3、存储类

5、:如 auto register extern static等 4、运算符:sizeof 注意关键字不能用作一般标识符,即不允许用作变量名或函数名等。C语言的关键字都是小写的。例如else是关键字,但ELSE就不是关键字。2.2 基本的数据类型2. 2 . 1 C的数据类型2. 2. 2 C语言的基本数据类型 2.3常量2.3.1 常量和符号常量1、常量的含义:在程序运行过程中,其值保持不变的量。常量不需要说明可直接使用2、符号常量1)含义:用一个标识符表示的常量。2)定义方法:#define 符号常量 数值 例:#define PRICE 30 作用是定义符号常量PRICE的值为30,在程序

6、任何地方用到PRICE符号常量的地方,系统将自动用常量30代替(注意是定义不是赋值,无=)。 定义符号常量的目的是为了提高程序的可读性,便于程序的调试、修改和纠错(如定义半径值便于计算园面积、球体积,求球表面积等)。3)使用要点: 为区分符号常量与变量的不同,通常符号常量用大写字母表示(但不是必须)。例l2-3-1: #include #define PRICE 30main() int num=10,total; total=num*PRICE; printf(total=%d,total);例l2-3-2:#include #define PI 3.1415926 /*定义PI值*/mai

7、n() float r,area; scanf(%f,&r); area=PI*r*r; /*代入PI值计算面积*/ printf(%f,area);注意:符号常量不是变量,没有赋值号,也不能重新 赋值,在整个作用域内不能再改变。2.3.2 整型常量C语言表示整型常量的方法有以下三种:十进制整数:用不带任何修饰的整数表示。如123、-456、0等;八进制整数:以数字O开头的整数。如O123、O11等;十六进制整数:以数字Ox开头的整数。如Ox123、OX2ef;八进制数和十六进制数一般是无符号数。C语言中普通整型常量在机器中占用一个字长,但由于各机器字长不同,所以整数所能表示的数值范围也不同。

8、系统根据整型常量的具体数值确定其类型。使用整型常量时要注意是否超出数值表示范围之外,如在一个16位字长的机器上,十进制整数的表示范围是-3276832767,那么O200000和Ox10000均超出表示范围长整型常量。整型常量后缀长整型后缀:l或L,如:O2341l、9666L都是长整型常量。无符号整型后缀:u或U,如986u、OxfedU都是无符号整型常量。二者可以同时使用,例如:9999LU、 O77777LU2.3.3 实型常量(浮点数)十进制数形式的浮点数:由数字和小数点组成。 如:123.456、0.123、123.0、0.0、123.等。指数形式的浮点数:用字母e表示十进制指数中的

9、10。如:123e3(表示123*103)、6.E5、.123e+4都是合法的浮点常量。注意:e字母前必须有数字,且e后的指数必须为整型。如:e3、2.1e3.5、.e3为不合法。浮点常量如不带后缀,如上所示,都是双精度类型(double)。浮点常量可带后缀f或F,如3.14f,那么其类型为单精度浮点型(float)浮点常量可带后缀l或L,如3.14L,那么其类型为长双精度型(long double)2.3.4 字符常量C语言规定以单引号括起来的单个字符为字符常量(只能以单引号括起来,且只能是单个字符)。 如:A、a、2 、!等。 注意:请区别A和a的不同; 中的字符引用的是该字符的ASCII

10、码值。字符常量的存放形式与整数的存放形式相类似,故C中的字符数据与整型数据之间具有相通性。转义字符常量(也称控制字符常量) 用开头的特殊形式的字符常量,用以产生一个动作。 如:n、r、t、v、123等。 请同学们理解并记忆常用的转义字符,学会其使用方法。2.3.5 字符串常量(字符串字面量)C语言中用双引号将一串字符括起来称为字符串常量。 如 “asee”、 “011”、“We are studing C”等。 字符串常量可以看作是一个数组,这个数组的每个元素是一个个字符。 编译程序在编译源程序时自动在每个字符串末尾放空字符0,作为字符串结束标记。 要点:请区别”A”与A的不同。(说明见书P3

11、4) 因为它们各自在内存中存放的长度不同。 ”A” A A 0A ASCII码为0的字符2.4变量1、变量的含义: 在程序执行过程中,其值可以被改变的量。变量的构成:变量名、变量值。 (注意区分变量名和变量值: 存储单元地址与存储单元内容)a122、变量的命名 每个变量具有一个名称,以区分不同的变量,变量名应是合法的标识符。变量的命名原则:按“见名知意”的原则。3、不同类型变量的定义与使用变量的定义方法: 变量类型 变量名称 说明: 变量必须先定义、后使用。 应保证变量名使用正确(严格区分大小写) 定义后的变量,在编译时可为其分配相应大小的存储单元。 可在编译时依变量类型的定义检查该变量所进行

12、的运算是否合法。2.4.1 整型变量及在内存中的存储形式1、含义:用于存放整型数据的变量,表示整型关键字为int。2、分类: int 整型 short int 称为短整型,可简写为short long int 称为长整型,可简写为long unsigned int 称为无符号整型,可简写为unsigned unsigned short 无符号短整型 unsigned long 无符号长整型 3、存储特点:C语言没有具体规定各类型数据所占内存的字节数,根据机型不同而不同,一般以一个机器字长存放 一个int 型数据(见P36表2.3)。4、整型变量的定义方法:int 变量名C程序规定变量要先定义后

13、使用,并且,所有变量的定义都要放在变量的说明部分。例:5、整型变量可表示的数据范围不同类型机器所对应的不同形式整型数据的存储情况IBM PCPDP_11VAX_11IBM 370Honey wellint16(2B)16323236Short16(2B)16161636Long32(4B)32323236Unsigned int16(2B)16323236Unsigned short16(2B)16161636Unsigned long32(4B)32323236IBM PC机器所对应的不同形式整型数据的存储范围所占位数数的范围Int16-3276832767即-215(215-1)Shortint16-3276832767即-215(215-1)Long int32-21474836482147483647即-231(231-1)Unsigned int16065535 即0(216-1)Unsigned short16065535 即0(216-1)Unsigned

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

当前位置:首页 > 生活休闲 > 社会民生

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