数据类型运算符与表达式 (3)

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

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

1、第3章 数据类型、运算符与表达式C程序设计1本章目标:uC语言的基本符号uC语言的数据类型u运算符和表达式u数据类型转换u自增,自减运算2C语言的基本符号C语言的基本词汇表有下列几部分:u数字:10个(09)。u英文字母:大、小写各26个(AZ,az) 。u下划线字符“_”(用来构成标识符)。u运算符:是指为表达程序基本操作使用的 一些符号;u关键字:是指为表达程序功能使用的一些 英文单词或单词缩写。3标识符u定义:程序中用来为符号常量、变量、函数、数 组、类型、文件命名的有效字符序列称为标识符。u命名规则: 1 只能由字母、数字和下划线组成。 2 第一个字符必须为字母或下划线。 3 不能使用

2、关键字。 4 区分大小写字符。 5 ANSI C 没有规定标识符的长度,各个编译系 统允许的标识符的长度(字符个数)不同。4常量u定义:常量又称为常数,是在程序运行过程中其 值不能被改变的量,常量的类型是由本身隐含决定 的。u举例:25、0、-13为整型常量;-55.23、0.57、3.8e3为实型常量;B,9为字符型常量。符号常量: 在C语言中,经常使用一个标识符来代表一个 常量。也就是给常量命名,称为符号常量。 5例 阅读程序。 #define PI 3.1415926 /*宏定义*/ #include void main( ) float r=18.5, area, length ;ar

3、ea =PI*r*r ;length =2*PI*r; printf(“area=%6.2f, length=%6.2f“, area, length); 符号常量几点说明:u程序中用宏定义的方法定义标识符PI代表常量;u符号常量名一般用大写字符;u符号常量的值在有效范围内不能改变,也不能再被赋值;u使用符号常量可以做到“含义清楚”、“一改全改”,从而提 高程序的可读性,方便程序的修改。6变 量1 1变量的基本概念变量的基本概念定义:定义:在程序运行过程中其值可以改变的量称 为变量。变量具有三个属性:u变量名: 选择一个标识符,给变量取一个名字称为变量名,变量名的命名规则与标识符完全相同。u变

4、量值: 是对应变量名的存储单元所存放的具体的数值。u变量的数据类型: 是指变量可以存储的数据的类型,也就是变量值的数据类型。72变量的定义u变量的定义:程序中指定变量的名字和数据类型变量的定义在一个函数开头的声明部分 变量定义的一般形式:类型说明符 变量名1,变量名2, ,变量名n;u举例: int k, m, n ; /* 定义三个整型变量 */ float x,y,z; /* 定义三个实型变量 */ char str; /* 定义一个字符型变量 */83变量的初始化定义变量的同时,还可以为变量指定初值,称为变量的 初始化。例如程序段: float y=0.5; char str=a; 又如

5、: int j=0, sum=100;该定义变量方式与下面的语句等价: int j, sum; j=0; sum=100;也可以对被定义变量的一部分赋初值。 int i=0, j=0, k, sum;不可以用下面的写法对几个变量同时赋同一个初值。 int i=j=k=0; 9几点说明:程序运行时从变量中取值,实际上是通过变量名找到相应的内存地址,从其相应的存储单元中读取数据。u程序中变量值却可以动态更换。u变量定义后并没有确定的值,或者说值是随机的。可以采 用某些方法给变量赋值, 当再次给变量赋值时,新值将替代旧值。u程序中使用的变量,必须“先定义,后使用” 。58a12001a1: 变量名5

6、8: 变量值2001 :存储单元地址Int a1=50;a1=58;a1=a1+2;200210关键字u定义:为了清晰的表达程序的功能,使用了一些英文 单词或单词缩写,这些单词称为关键字。举例:if 、 int 、while下面几个字虽然不属于关键字,但建议读者把 它们看作关键字,不要在程序中随便使用。define undef include ifdef ifndef endif 11C 语言的数据类型uC语言中各种数据类型具有不同的存储长度、取值范围及允许的操作。uC语言将能处理的数据分成两大类型,基本类型和构造类型,构造类型的数据是由若干个基本类型按一定的结构组合而成的。u语言规定:在程序

7、中用到的数据,都必须指定其数据类型。 12整型数据1整型变量(1)有符号整型变量的分类有符号整型变量按数值的范围分为三种:1 基本整型:以int作为类型说明符2 短整型:以short int或short 作为类型说明符3 长整型:以long int或long 作为类型说明符u整型变量一般在内存中占的字节数与所选择的系统 有关,规定long型整数不短于int型,short型整数不 长于int型。13(2)无符号整型变量的分类定义:u用来处理一些不带符号的整型变量,将存储单元 中的全部二进制位都用来存放数,取消符号位,称 为无符号整型。u无符号整型变量按数值的取值范围不同也分为三 种:1、无符号基

8、本整型:以unsigned int作为类型说 明符 2、无符号短整型:以unsigned short int或 unsigned short 作为类型说明符 3、无符号长整型:以unsigned long int或 unsigned long 作为类型说明符14整型数据在内存中的存储形式 01111111 1111 111111111111 1111 1111符 号 位数 据 位=32767=65535有符号整型无符号整型152整型常量整型常量的表达形式整型常量就是整常数。有以下三种表达形式:1 十进制整数 例如:567、0、-89。2 八进制数 特征是以数字符0开头,并由数字符07组成的字符

9、序列,例如0125,011;3 十六进制数 特征是以0x或0X开头,并由数字符09,和字符af或者字符AF组成的数字符序列。 0x2ab, 0X2AB。16整型常量的类型整型常量的类型是由其本身隐含决定的例如:32767的类型是int,32769类型是long一个整常量后面加一个字母L(或小写l), 则明确指定该常量是long int型的,例如0L,123L,234l等。17实型数据1、实型变量(1) 实型变量的分类实型变量按数值的范围分为三种:1 单精度实型:以float 作为类型说明符;2 双精度实型:以double 作为类型说明符;3 长双精度实型:以long double 作为类型说明

10、符;类型 说明符 字节数 比特数 有效数字 数值范围单精度实型 float 4 32 6-7 10-38 1038双精度实型 double 8 64 1516 10-308 10308长双精度实型 long double 16 128 1819 10-4932 10493218(2) 实型变量的定义对每一个实型变量,都应在使用前进行定义,例如:float x, y; /*定义x, y为单精度实数 */double z; /*定义z为双精度实数 */2、实型常量实型常量的表达形式 u十进制小数形式 0.125、.125、-0.125、-125.0、1.25;u指数形式 一般格式是 实数(整数)+

11、e (或E)+整数例如:123.456的指数形式是1.23456e2、1.23456E2 、 12.3456e1 、0.0123456e4、 .123456e3、 12345.6e-2等。而e2、1.23e3.5 、e 、12345E 等都是不合法形式。19字符型数据1、字符常量u定义: 字符常量是用单撇号括起来的一个字符。举例: a , A,$,5等都是 字符常量。u转义字符:还有一些特殊的字符,C语言约定用 “”开头的字符序列作为标记,这类字符统称为“ 转义字符”。举例:转义字符n中的“n”不代表字母n, 该转义字符表示在输出过程中将当前位置移到下一 行的开头,简称换行;202字符变量u定

12、义: 用来存放一个字符常量的变量称为字符变量。例如程序段:char c1, c2; /*定义变量c1,c2为字符变量*/c1= a; c2= b; /*将字符常量存放到字符变量中*/几点说明:u字符常量或字符变量在内存中都只占有一个字节。u字符在程序中是以ASCII码的形式表示的,在内存中是以二 进制的形式存储的,它与以整数的存储形式相类似。u在C程序中,字符型数可以当作整型数进行处理,并且可以 和整型数混合操作和处理。21阅读程序。 #include void main() char ch1;int ch2;ch1=A; ch2=B;printf(“n%d,%dn“,ch1,ch2);ch1

13、=97; ch2=98;ch1=ch1+6;ch2=98+6;printf(“%c,%cn“,ch1,ch2);printf(“%d,%d“,ch1,ch2); 运行结果: 65,66 g,h 103,1042223字符串常量定义:字符串常量是括在一对双撇号之间的字符序列(其中 也可以包括转义字符)举例:“C language ”,“s”,“$35.56”, “tChinsban”。字符串常量中的字符依次存储在内存中一块连续的区域内 ,并把空字符0 (ASCII 值为0)自动地附加到字符串的 尾部作为字符串的结束标志。例如:字符串“HELLO“ 字符个数为5,所占内存空间应为6 个字节。HEL

14、LO024字符常量和字符串常量的区别:在程序中,用字符常量或字符串常量表示单个字符 ,例如 a,或“a”,两者的区别如下: 1、字符串“a”在内存中占2个字节,而字符a 在内存中占1个字节字符串“a“ 字符a 2、不能将字符串赋给一个字符变量 例如程序段: char ch1,ch2;ch1=a; /*正确*/ch2=“a“; /*错误*/a0a25运算符和表达式u运算符定义:描述各种操作的符号称为运算符。u表达式定义:用运算符将被操作对象连接起来,符合C语言语法的 式子称为表达式。u表达式特点:(1)、常量和变量都是表达式(2)、运算符的类型对应表达式的类型,例如:算术运 算符对应算术表达式。

15、(3)、每一个表达式都有自己的值。26运算符属性 : (1) 优先级当若干个运算符同时出现在表达式中时,优先级 规定了运算的先后次序。由于C语言运算符种类很多, 所以优先级有15级之多。C语言把圆括号作为运算符,规定它的优先级最高 ,规定为15级,从而保证优先运算圆括号内的式子, 逗号运算符的级别最低,规定为1级。27(2) 结合性当若干个具有相同优先级的运算符相邻出现在 表达式中时,结合方向规定了运算的先后次序。分为 “从左到右”和“从右到左”两个结合方向。一般来说,大多数运算符的结合方向”从左到 右”, 只有单目运算符、赋值运算符和条件运算符 的结合方向”从右到左”,这里单目运算符是指作用 于一个操作对象的运算符。28算术运算符和算术表达式算术运算符: + , - , * , / , %几点说明:1、+、-、*与数学中的意义相同2、在除法运算中,两个整数相除的结果为整数, 一般采用”向零取整”的规则,取整时向零靠拢。 例如9/2运算结果为4;-9/2运算结果为-4。293、%是取余运算符或称模运算符,运算结果是两个整数相除后的余数(整数)。并且规定运算结果 的正负符号与被除数的符号一致,如果被除数小于 除数,运

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

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

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