Chapter03数据类型ppt课件_第1页
Chapter03数据类型ppt课件_第2页
Chapter03数据类型ppt课件_第3页
Chapter03数据类型ppt课件_第4页
Chapter03数据类型ppt课件_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第3章章 数据类型、运算符与表达式数据类型、运算符与表达式 程序是处理某种问题的一组指令的有序集合。 著名计算机科学家沃思Nikiklaus Wirth提出一个公式: 程序 = 数据构造 + 算法 程序是什么?3.1 C言语数据类型3.2 常量、变量和标识符1. 标识符定义:用来标识变量、常量、函数等的字符序列组成:只能由字母、数字、下划线组成,且第一个字母必需是字母或下划线C言语的关键字不能用作变量名 大小写敏感长度:有效长度为32个字符。随系统而异,但至少前8个字符有效命名原那么:变量名和函数名中的英文字母普通用小写,以添加可读性 见名知意不宜混淆 如l与I, o与0 在TC2.0及BC

2、3.1中,变量名标识符的有效长度为个字符,缺省值为,但在VC中其长度可到达255 例:判别以下标识符号合法性sum Sum M.D.John day Date 3days student_name #33 lotus_1_2_3 char ab _above $123M.D.John3days#33char$123ab .字符非法 #字符非法 char是关键字 字符非法3.2 常量、变量和标识符2. 常量定义:程序运转时其值不能改动的量即常数 常量的分类 :直接常量( 值常量) 整型常量: 10、15、-10、-30 实型常量: 12.5、 30.0、-1.5 字符常量: A、b、c 字符串常

3、量: “sum、“A、“123符号常量 用标识符来代表常量。 其定义格式为: #define #define 符号常量符号常量 常量常量 #define NUM 20 #define PI 3.1415926 运转结果:total = 300 行尾不能有分号行尾不能有分号 define define前面一定要有前面一定要有# # 符号常量名最好运用大写符号常量名最好运用大写 符号常量名最好有意义符号常量名最好有意义 3.2 常量、变量和标识符3. 变量定义:程序运转时其值可以被改动的量 变量的两要素 :变量名 、变量值变量的定义格式 :变量的初始化:定义时赋初始值变量的运用:先定义,后赋值变量

4、定义位置:普通放在函数开头int x, y, z;float radius, length, area; char ch;决议分配字节数和数的表示范围合法标识符例: int a = 2, b, c = 4; float data = 3.67; char ch = A; int x = 1, y = 1, z = 1; int x = y = z = 1;编译程序根据变量定义为其分配指定字节的内存单元地址short int a=1, b=-3, c;abc2字节2字节2字节地址地址内存.1-3随机数例1: int student; stadent = 19; /Undefined symbol

5、 statent in function main 例2: float a,b,c; c = a % b; /Illegal use of floating point in function main int main ( ) int a, b = 2; float data; a = 1; data = (a + b) * 1.2; printf (“data=%fn, data); return 0;变量定义可执行语句3.3 简单数据类型与表示范围定义整数的符号常量定义整数的符号常量 #define NUM1 20 / #define NUM1 20 /十进制数十进制数2020 #def

6、ine NUM2 020 / #define NUM2 020 /八进制数十进制八进制数十进制1616 #define NUM3 0 x2a / #define NUM3 0 x2a /十六进制数十进制十六进制数十进制4242思索题:以下整型常量哪些是非法的?思索题:以下整型常量哪些是非法的? 012 012,oX7AoX7A,0000,078078,0 x5Ac0 x5Ac,-0 xFFFF-0 xFFFF,00340034,7B7B。首字符不能首字符不能是字母是字母o o 八进制数中不八进制数中不能有数字能有数字8 8 十进制数中不十进制数中不能有字母能有字母B B 假设是正整数,采用符号

7、-绝对值表示,即最高有效位符号位为0表示正,数的其他部分那么表示数的绝对值; 假设是负整数,那么先写出与该负数相对应的正数的补码表示,然后将其按位求反,最后在末位最低位加1; 然后将上述求得的补码的低n位存放于内存单元之中,就得到了该整数在内存中的表示,内存单元的最高位是符号位0表示正,1表示负。0000111000000000低字节低字节高字节高字节低地址低地址高地址高地址符号位符号位低字节低字节高字节高字节低地址低地址高地址高地址00001110000000000000000000000000符号位符号位1111001011111111低字节低字节高字节高字节低地址低地址高地址高地址符号位

8、符号位低字节低字节高字节高字节低地址低地址高地址高地址11110010111111111111111111111111符号位符号位1111111111111111低地址低地址高地址高地址低字节低字节高字节高字节符号位符号位低字节低字节高字节高字节低地址低地址高地址高地址11111111111111111111111011111111符号位,符号位,表示负表示负0001110000000000低字节低字节高字节高字节低地址低地址高地址高地址符号位符号位低字节低字节高字节高字节低地址低地址高地址高地址00011100000000000000000000000000符号位符号位11100100111

9、11111低字节低字节高字节高字节低地址低地址高地址高地址符号位符号位11100100111111111111111111111111低字节低字节高字节高字节低地址低地址高地址高地址符号位符号位1011011010001010低字节低字节高字节高字节低地址低地址高地址高地址符号位符号位表示负表示负10110110100010100000000000000000低字节低字节高字节高字节低地址低地址高地址高地址符号位符号位0100101001110101低地址低地址高地址高地址低字节低字节高字节高字节符号位符号位表示正表示正01001010011101011111111111111111低字节低字

10、节高字节高字节低地址低地址高地址高地址符号位符号位表示负表示负例:例: int a; int x, y, z; int m = 2, y = -3;1111111011111111低地址低地址高地址高地址低字节低字节高字节高字节1111111011111111低字节低字节高字节高字节低地址低地址高地址高地址/文件包含文件包含, ,头文件阐明头文件阐明 /定义符号常量定义符号常量SUMSUM,值为,值为65535 65535 /定义两个定义两个intint型变量型变量a a和和b b,b b赋初值赋初值20 20 /定义无符号整型变量定义无符号整型变量c c,并赋初值,并赋初值0 xff 0 x

11、ff /定义长整型变量定义长整型变量D D /对a赋值为SUM,这时a的值是65535 /对对D D赋值为赋值为301 301 /以有符号十进制方式以有符号十进制方式%d%d显示显示a a的值的值 /以有符号十进制方式以有符号十进制方式“%d“%d显示显示b b的值的值 /以有符号十进制方式以有符号十进制方式%d%d显示显示c c的值的值 /以有符号十进制方式以有符号十进制方式%d%d显示显示D D的值的值 类 型精确表示的数字个数 float 7 8 double 16 17 long double 17 18abc123.456787123.456787123.456789如 a A ?

12、n 101如 A65, a97, 048 , n10本义字符及其含义:本义字符本义字符含义含义nvradddtbf“xhh本义字符本义字符含义含义换行垂直制表回车响铃单引号3位8进制数代表的字符程度制表退格换页反斜线双引号2位16进制数代表的字符如 101 -A 012 -n 376 - x61 -a 60 -0 483 -()例:A-101-x41-65字符串常量 定义:用双引号(“)括起来的字符序列 存储:每个字符串尾自动加一个 0 作为字符串终了标志0 x480 x450 x4C0 x4C0 x4F0字符串终了标志字符串终了标志00 x41 0 x41 0例: char ch; ch =

13、 “A; 例: char ch; ch = A; 字符型变量 字符型数据类型符是char字符character 在内存中占1个字节8位 字符变量存放字符ASCII码 char与int数据间可进展算术运算 存在有符号和无符号之分。默许情况下为有符号 类型符号关键字占字节数数的表示范围整型有(signed)int 在16位系统下2-3276832767 在32位系统下4-21474836482147483647(signed)short2-3276832767(signed)long4-21474836482147483647无unsigned int 在16位系统下2065535 在32位系统下

14、404294967295unsigned short2065535unsigned long404294967295实型有float4绝对值10-371038有double8绝对值10-30710308有long double10绝对值10-4931104932字符型有char1-128127无unsigned char10255十进制数十进制数 对应的机器数补码对应的机器数补码 80 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 ch 80 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 ch + 50 0 0 0 0 0 0 0 0 0 0 1 1 0 0

15、 1 0 + 50 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 01 0 0 0 0 0 1 0printfvariable a = %d , a ;3.4 C言语的运算符与表达式 变量用来存放数据,运算符那么用来处置数据。用运算符将变量和常量衔接起来的符合C语法规那么的式子被称为表达式。 C运运算算符符算术运算符:算术运算符:+ - + - * * / % + - / % + -关系运算符:关系运算符: = != = !=逻辑运算符:!逻辑运算符:!

16、 & | & |位运算符位运算符 : | & | &赋值运算符:赋值运算符:= = 及其扩展及其扩展条件运算符:条件运算符:?:?:逗号运算符:逗号运算符:, ,指针运算符:指针运算符:* * & &求字节数求字节数 :sizeofsizeof强迫类型转换:类型强迫类型转换:类型分量运算符:分量运算符:. -. -下标运算符:下标运算符:其它其它 :( ) -( ) -1. 赋值运算符、赋值表达式 2. 强迫类型转换符 首先将等号右边的表达式的值转换成“=左边的数据类型。然后再赋值给等号左边的变量。 2. 强迫类型转换符 2. 强迫类型转换符 2

17、. 强迫类型转换符 根本算术运算符: + - * / % 结合方向:从左向右 优先级: - -* / % - + - (2) (3) (4)阐明: “-可为单目运算符时,右结合性 两整数相除,结果为整数 %要求两侧均为整型数据3. 算术运算符、算术表达式 表达式和算术表达式3. 算术运算符、算术表达式 运算符优先级到目前为止 自增、自减运算符+ - 作用:使变量值加1或减1 种类: 前置 +i, -i (先执行i=i+1或i=i-1,再运用i值 后置 i+,i- (先运用i值,再执行i=i+1或i=i-1b; b; a = 3; b = 5; c = (a+) a = 3; b = 5; c

18、= (a+) * *b; b; /k=4,j=4/k=4,j=4/k=3,j=4/k=3,j=4/4/4/3/3/c=20,a=4/c=20,a=4/c=15,a=4/c=15,a=44. 自增自减运算符、负号运算符 负号运算符“- 减号既是一个算术运算符,又是一个负号运算符。负号运算符是单目运算符。例如:a = 2,那么a的值就是2。负号运算符的优先级比较高,与强迫类型转换符是同一个级别。 自增、自减运算符本卷须知 +和-运算符只能用于变量,不能用于常量和表达式。 由于+和-蕴含着赋值操作。 例如:5+、-a+b都是非法的表达式。 负号运算符、+、-和强迫类型转换运算符的优先级一样,当这些运

19、算符连用时,按照从右向左的顺序计算,即具有右结合性。 两个和之间不能有空格。 在表达式中,延续使同一变量进展自增或自减运算时,很容易出错,所以最好防止这种用法。 例如:+i+是非法的。 自增、自减运算,常用于循环语句中,使循环控制变变量加或减-,以及指针变量中,使指针指向下或上一个地址。4. 自增自减运算符、符号运算符5. 算术运算符中数据类型转换规那么 6. 逗号运算符、逗号表达式 /a=15,/a=15,表达式值表达式值6060/a=15,/a=15,表达式值表达式值2020/赋值表达式,表达式值赋值表达式,表达式值1818,x=18x=18/逗号表达式逗号表达式, ,表达式值表达式值18,x=318,x=3/1,2,3/1,2,3/3,2,3/3,2,38. sizeof运算符、复合运算符 3.5 运算符的优先级和结合性优 先 级运 算 符需要操作数的个数结 合 性高低( )从左向右 + - -(负号运算符)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论