C语言数据类型与运算符.ppt

上传人:wuy****n92 文档编号:70101568 上传时间:2023-01-16 格式:PPT 页数:67 大小:439.50KB
返回 下载 相关 举报
C语言数据类型与运算符.ppt_第1页
第1页 / 共67页
C语言数据类型与运算符.ppt_第2页
第2页 / 共67页
点击查看更多>>
资源描述

《C语言数据类型与运算符.ppt》由会员分享,可在线阅读,更多相关《C语言数据类型与运算符.ppt(67页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第节第节 第节第节 第节第节第节第节 第节第节第节第节第节第节返回主目录 数据与数据类型数据与数据类型 基本数据类型及其表示基本数据类型及其表示 算术运算与赋值运算算术运算与赋值运算 关系运算与逻辑运算关系运算与逻辑运算 位运算位运算 其它运算其它运算 混合运算及数据类型转换混合运算及数据类型转换2 3-13-1数据与数据类型数据与数据类型节节结束结束程序设计语言的基本规则包括程序设计语言的基本规则包括l 常数常数l 变量变量l 运算符运算符l 表达式表达式l 函数函数什么是语言规则?什么是语言规则?为什么要有这些规则?为什么要有这些规则?把自然语言描述问题的方式转把自然语言描述问题的方式转换

2、为换为C C语言的形式表达给计算机语言的形式表达给计算机表达式表达式常数常数变量变量函数函数运算符运算符下页下页 末页末页3 3-1 3-1数据与数据类型数据与数据类型(续)续)l 常数常数3 3、5 5和和3.63.6的存放空间是否相同?的存放空间是否相同?l 变量变量a a如何表示?如何存放?如何表示?如何存放?l 计算机如何知道计算机如何知道3.63.6和和a a之间的关系?之间的关系?l 和和 如何输入?如何存放?如何输入?如何存放?l 计算机如何识别计算机如何识别“=”“=”?运算结果放在哪里?运算结果放在哪里?数据的描述数据的描述数据的操作数据的操作首页首页 上页上页 下页下页节节

3、末页末页结束结束计算机完成上述计算,首先要计算机完成上述计算,首先要解决数据的输入和存放问题解决数据的输入和存放问题4 3-1 3-1数据与数据类型数据与数据类型(完)完)l l程序的任务是对数据进行处理,程序的任务是对数据进行处理,数据数据是是程序处理的程序处理的对象对象,而,而运算符运算符是施加给是施加给这些数据的这些数据的操作操作。l l 数据和运算符是表达式的基本元素数据和运算符是表达式的基本元素首页首页 上页上页节节结束结束53-2 3-2 基本数据类型及其表示基本数据类型及其表示1、常量、常量 在程序运行中,其值保持不变的量称为常量在程序运行中,其值保持不变的量称为常量整型整型 1

4、00,125,-100,0实型实型 3.14,0.125,-3.789字符型字符型 a,b,2l常量的表示方法:常量的表示方法:下页下页节节末页末页结束结束一、计算机语言表示数据的基本形式一、计算机语言表示数据的基本形式63-2 3-2 基本数据类型及其表示基本数据类型及其表示(续)续)2、变量、变量在程序运行过程中,其值改变的数据称为变量在程序运行过程中,其值改变的数据称为变量l有关变量的规定有关变量的规定u 变量通过变量名标识,变量通过变量名标识,变量名和内存中变量名和内存中的存储单元相对应。编写程序时通过变量的存储单元相对应。编写程序时通过变量名来存、取存储单元。名来存、取存储单元。u

5、变量必须先定义,后使用变量必须先定义,后使用变量变量memorya82562561212首页首页 上页上页 下页下页节节末页末页结束结束73-2 3-2 基本数据类型及其表示基本数据类型及其表示(续)续)1.1.变量名由字母变量名由字母 A A、B B、Z Z、a a、b b、z z,数数字字 0 0、1 1、9 9 和下划线和下划线 _ _ 组成。组成。2.2.变量名的变量名的第一个字符第一个字符必须是英文字母必须是英文字母或下横线。或下横线。3.3.不能用系统中的不能用系统中的关键字关键字作为变量名作为变量名4.4.变量名中的字母是变量名中的字母是区分大小写区分大小写的。的。sumsum、

6、stu_namestu_name、_age_age、Lts_1_2Lts_1_2、a2a23232c c、x.yx.y、start+9start+9、c2.0c2.0 NAME name NAME name 表示两个不同的标识符。表示两个不同的标识符。u 变量名的规定变量名的规定 不提倡大小写混合使用不提倡大小写混合使用首页首页 上页上页节节结束结束83-2 3-2 基本数据类型及其表示基本数据类型及其表示(续)续)C语言语言的数据类型有:的数据类型有:数据类型数据类型构造类型构造类型指针类型指针类型空类型(空类型(无值类型)无值类型)voidvoid枚举类型枚举类型枚举类型枚举类型 enum

7、enumenumenum数组类型数组类型数组类型数组类型结构类型结构类型结构类型结构类型 structstructstructstruct联合类型联合类型联合类型联合类型 unionunionunionunion基本类型基本类型整型整型整型整型 intintintint字符型字符型字符型字符型 charcharcharchar实型(浮点型)实型(浮点型)实型(浮点型)实型(浮点型)单精度实型单精度实型单精度实型单精度实型 floatfloatfloatfloat双精度实型双精度实型双精度实型双精度实型 doubledouble下页下页节节末页末页结束结束93-2 3-2 基本数据类型及其表示基

8、本数据类型及其表示(续)续)本节介绍各种数据类型的名称、存本节介绍各种数据类型的名称、存放的长度、表示数的范围、各种数据类放的长度、表示数的范围、各种数据类型变量的说明格式、初始化、常量的表型变量的说明格式、初始化、常量的表示方法以及使用中的注意事项等。示方法以及使用中的注意事项等。重点和难点:重点和难点:l 整型数据表示数的范围整型数据表示数的范围l 实型数据的有效数字实型数据的有效数字l 字符和字符串的区别字符和字符串的区别l 转义字符的概念转义字符的概念首页首页 上页上页 下页下页节节末页末页结束结束103-2 3-2 基本数据类型及其表示基本数据类型及其表示(续)续)二、二、整型数据整

9、型数据整型数据包括整型数据包括整型常量整型常量和和整型变量,整型变量,整型数据整型数据以二进制补码形式存储以二进制补码形式存储 l l整型常量的不同数值表示方法整型常量的不同数值表示方法1010进制:进制:0 09 9 8 8进制:进制:0 07 7,以,以0 0开头开头1616进制:进制:0 09 9,A AF/aF/af f,以以0 0 x x或或0 0X X开头开头 1.1.整型常量整型常量例例 100100、-8-8、0 0;010010、024024;0 0 x38x38、0X1F0X1Fl l整型常量的类型整型常量的类型w w根据值大小默认类型根据值大小默认类型w w在常量后面加在

10、常量后面加l l或或L L,表示表示long intlong int型型 例如:例如:123123L L,0L0L,432l 432l 都是都是long intlong int型常量型常量首页首页 上页上页 下页下页节节末页末页结束结束113-2 3-2 基本数据类型及其表示基本数据类型及其表示(续)续)l整型变量的整型变量的形式形式共六种共六种基本整型基本整型短整型短整型长整型长整型无符号整型无符号整型无符号短整型无符号短整型无符号长整型无符号长整型int int short int short int long intlong intunsigned intunsigned intunsi

11、gned short unsigned short unsigned longunsigned longl占存储空间占存储空间占内存字节数占内存字节数2 22 24 42 22 24 4.整型变量整型变量首页首页 上页上页 下页下页节节末页末页结束结束123-2 3-2 基本数据类型及其表示基本数据类型及其表示(续)续)l整型变量的整型变量的定义定义例如:例如:int i,j;int i,j;long k,m;long k,m;unsigned int x,yunsigned int x,y变量有值吗?变量有值吗?格式:类型说明符格式:类型说明符 变量列表;变量列表;首页首页 上页上页 下页下

12、页节节末页末页结束结束133-2 3-2 基本数据类型及其表示基本数据类型及其表示(续)续)3.整型数据的取值范围整型数据的取值范围 类型类型类型类型 类型说明符类型说明符类型说明符类型说明符 长度长度长度长度 数的范围数的范围数的范围数的范围基本型基本型基本型基本型 intintintint 2 2 2 2字节字节字节字节 -32768-32768-32768-3276832767327673276732767短整型短整型短整型短整型 short short short short 2 2 2 2字节字节字节字节 -2-2-2-2151515152 2 2 215151515-1-1-1-1

13、 长整型长整型长整型长整型 long long long long 4 4 4 4字节字节字节字节 -2-2-2-2313131312 2 2 231313131-1-1-1-1无符号整型无符号整型无符号整型无符号整型 unsigned unsigned unsigned unsigned 2 2 2 2字节字节字节字节 0 0 0 065535655356553565535无符号短整型无符号短整型无符号短整型无符号短整型 unsigned short unsigned short unsigned short unsigned short 2 2 2 2字节字节字节字节 0 0 0 0655

14、35655356553565535无符号长整型无符号长整型无符号长整型无符号长整型 unsigned long unsigned long unsigned long unsigned long 4 4 4 4字节字节字节字节 0 0 0 0(2 2 2 232323232-1-1-1-1)首页首页 上页上页 下页下页节节末页末页结束结束j j、m m、x x 所占存储容存储容量和取值范围?量和取值范围?143-2 3-2 基本数据类型及其表示基本数据类型及其表示(续)续)int型数的表示范围型数的表示范围:存储长度存储长度16位二进制位二进制(2B)0 0 0 0 0 0 0 0 0 0 0

15、 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0=1=1=3=3最大的负数最大的负数?=-2=-21515=-32768=-32768l l 定点二进制补码表示定点二进制补码表示l l 占占2 2个字节存储个字节存储l l 数的表示范围数的表示范围:-32768-327683276732767例例-2 21515 的补码的补码首页首页 上页上页 下页下页节节末页末页结束结束a=2=21515-1=32767-1=32767最大的正数最大的

16、正数?153-2 3-2 基本数据类型及其表示基本数据类型及其表示(续)续)三、三、实型数据实型数据 实型数据包括实型数据包括实型常量实型常量和和实型变量实型变量1.1.实型常量实型常量两种表两种表示形式示形式小数小数指数指数0.1230.1233 3e-3e-3实型常量只能用实型常量只能用十进制形式表示十进制形式表示,不能用八进制不能用八进制和十六进制和十六进制常量占用内存空间吗常量占用内存空间吗?1 1e3e3、1.8e-31.8e-3、-123e-6-123e-6、-.1e-3-.1e-3e5e5、1e-3.21e-3.2、e e、.e-03.e-03首页首页 上页上页 下页下页节节末页

17、末页结束结束 163-2 3-2 基本数据类型及其表示基本数据类型及其表示(续)续)2.2.实型变量实型变量 类型说明符类型说明符类型说明符类型说明符 长度长度长度长度 数的范围数的范围数的范围数的范围 有效数字有效数字有效数字有效数字单精度型单精度型单精度型单精度型 floatfloatfloatfloat 4 4 4 4字节字节字节字节 -1010101038 38 38 38 1010101038383838 7 7 7 7位位位位双精度型双精度型双精度型双精度型 doubledoubledoubledouble型型型型 8 8 8 8字节字节字节字节 -1010101030830830

18、8308 10101010308308308308 15151515位位位位首页首页 上页上页 下页下页节节末页末页结束结束实型变量的有关规则如下:实型变量的有关规则如下:2 2-23-23=|=|尾数尾数|=1-2|b)?a:b目目不同类型的变量不同类型的变量,所占存储所占存储空间、数的表示范围、有空间、数的表示范围、有效位和允许的操作不同效位和允许的操作不同单目运算单目运算双目运算双目运算三目运算三目运算首页首页 上页上页 下页下页节节末页末页结束结束343-3 3-3 算术运算与赋值运算算术运算与赋值运算(续)续)l优先级优先级:运算符的执行顺序运算符的执行顺序 l结合性结合性:相同优先

19、级的多个运算符的运算顺序相同优先级的多个运算符的运算顺序l运算结果的类型运算结果的类型X=5+8a100X=a+b*ca+b-c572a=b=5 左结合左结合 右结合右结合 整型整型 逻辑型逻辑型130首页首页 上页上页 下页下页节节末页末页结束结束353-3 3-3 算术运算与赋值运算算术运算与赋值运算(续)续)+加法运算、正加法运算、正值运算值运算 (4 4)-减法运算、负减法运算、负值运算值运算 (4 4)*乘法运算乘法运算(3 3)/除法运算除法运算(3 3)%求余运算求余运算(3 3)(结合性(结合性 )二、算术运算符和算术表达式二、算术运算符和算术表达式1.1.1.1.参加运算的对

20、象都是参加运算的对象都是参加运算的对象都是参加运算的对象都是intintintint型,型,型,型,其结果截取为其结果截取为其结果截取为其结果截取为intintintint型。型。型。型。10/3 11/3 1/210/3 11/3 1/210/3 11/3 1/210/3 11/3 1/210.0/310.0/310.0/310.0/31./21./21./21./210/5*310/5*310/5*310/5*3 10/(5*3)10/(5*3)10/(5*3)10/(5*3)2.2.2.2.求余运算的对象必须是整型。求余运算的对象必须是整型。求余运算的对象必须是整型。求余运算的对象必须是

21、整型。10%3 9%3 10%3 9%3 10%3 9%3 10%3 9%3 10%310%310%310%3 10%10%10%10%3 3 3 3363-3 3-3 算术运算与赋值运算算术运算与赋值运算(续)续)10 10 10 10/3 3 3 3 值是值是值是值是 3 3 3 3 11 11 11 11/3 3 3 3 值是值是值是值是 3 3 3 3 1 1 1 1/2 2 2 2 值是值是值是值是 0 0 0 0 1.1.1.1./2 2 2 2 值是值是值是值是 0.500000 0.500000 0.500000 0.50000010.0 10.0 10.0 10.0/3 3

22、3 3 值是值是值是值是 3.333333 3.333333 3.333333 3.333333 10 10 10 10/5*3 5*3 5*3 5*3 值是值是值是值是 6 6 6 6 10 10 10 10/(5*3)(5*3)(5*3)(5*3)值是值是值是值是 0 0 0 0 10 10 10 10%3 3 3 3 值是值是值是值是 1 1 1 1 9 9 9 9%3 3 3 3 值是值是值是值是 0 0 0 010 10 10 10%3 3 3 3 值是值是值是值是-1-1-1-110 10 10 10%3 3 3 3 值是值是值是值是 1 1 1 1-10-10-10-10%3 3

23、 3 3 值是值是值是值是-1-1-1-1 商商-3-3余余-1-1373-3 3-3 算术运算与赋值运算算术运算与赋值运算(续)续)已知:已知:int i=3;int i=3;long e=4;long e=4;float f=1.5;float f=1.5;double d=2.0;double d=2.0;f=f=10+a10+a+i*fi*f-d/ed/e f=f=107107 +4 4.5.5 -0.50.5 f=f=111 111.5.5 -0.50.5 f=f=11111 1首页首页 上页上页 下页下页节节末页末页结束结束 算术表达式算术表达式383-3 3-3 算术运算与赋值运

24、算算术运算与赋值运算(续)续)三、自增、自减运算符三、自增、自减运算符l变量自身加(减)变量自身加(减)1 i=i+1 i+先使用变量先使用变量i的值,再加的值,再加1+i 先加先加1,再使用变量,再使用变量i的值的值 i=i-1 i-先使用变量先使用变量i 的值,再减的值,再减1-i 先减先减1,再使用变量,再使用变量i 的值的值 首页首页 上页上页 下页下页节节末页末页结束结束393-3 3-3 算术运算与赋值运算算术运算与赋值运算(续)续)l只能用于变量,不能用于表达式和常量只能用于变量,不能用于表达式和常量l优先级:优先级:高高于双目算术运算符于双目算术运算符(2 2)l结合性:结合性

25、:从右向左从右向左(i+k)i+k)+,-+,-3 3i=3;printf(“%d”,i+);i=3;printf(“%d”,i+);输出输出3 3后后,i i的值为的值为4 4i=3;printf(“%d”,+i);i=3;printf(“%d”,+i);输出输出4 4首页首页 上页上页 下页下页节节末页末页结束结束40首页首页 上页上页 下页下页节节末页末页结束结束3-3 3-3 算术运算与赋值运算算术运算与赋值运算(续)续)main()main()int a,b,s ;int a,b,s ;a=5;b=5;a=5;b=5;s=s=a+ba+b;printf(“%d,%d,%dn”,a,b

26、,s);printf(“%d,%d,%dn”,a,b,s);s=s=a+b;a+b;printf(“%d,%d,%dn”,a,b,s);printf(“%d,%d,%dn”,a,b,s);s=s=+a+b+a+b;printf(“%d,%d,%dn”,a,b,s);printf(“%d,%d,%dn”,a,b,s);s=s=-a+b-a+b;printf(“%d,%d,%dn”,a,b,s);printf(“%d,%d,%dn”,a,b,s);s=s=a-+ba-+b;printf(“%d,%d,%dn”,a,b,s);printf(“%d,%d,%dn”,a,b,s);s=s=a+ba+b;

27、printf(“%d,%d,%dn”,a,b,s);printf(“%d,%d,%dn”,a,b,s);例例413-3 3-3 算术运算与赋值运算算术运算与赋值运算(续)续)s=a +b;s=a+b;s=+a+b;s=-a +b;s=a-+b;s=a +b;a=5,b=55+5=105+5=107+5=126+5=116+5=115+5=10 a b s5 5 106 5 107 5 126 5 115 5 115 5 10首页首页 上页上页 下页下页节节末页末页结束结束423-3 3-3 算术运算与赋值运算算术运算与赋值运算(续)续)i=2;k=i+i+i+;i=2;k=+i+(+i)+(+

28、i);优先优先级级433-3 3-3 算术运算与赋值运算算术运算与赋值运算(续)续)四、赋值运算符四、赋值运算符将一个常量或一个表达将一个常量或一个表达式的值赋给一个变量式的值赋给一个变量x=5 y=x+10可以将一个实型赋给一个整型可以将一个实型赋给一个整型也可将一个整型赋给一个实型也可将一个整型赋给一个实型int x,x=5.3;x的值为的值为 5float y,y=5;y的的值为值为 5.000000类型转换中的类型转换中的“赋值转换赋值转换”例例首页首页 上页上页 下页下页节节末页末页结束结束443-3 3-3 算术运算与赋值运算算术运算与赋值运算(续)续)l复合的赋值运算复合的赋值运

29、算l赋值运算的优先级赋值运算的优先级(14)l赋值运算的结合性赋值运算的结合性比算术运算低比算术运算低从右向左从右向左X=y=5x=x+n x+=n赋值运算符两侧赋值运算符两侧出现相同的变量出现相同的变量n为一个常数为一个常数首页首页 上页上页 下页下页节节末页末页结束结束453-3 3-3 算术运算与赋值运算算术运算与赋值运算(续)续)x=x+nx=x-nx=x*nx=x/nx=x%nx+=nx-=nx*=nx/=nx%=n算术运算与赋算术运算与赋值运算相结合值运算相结合X与与n均均为整数为整数例例首页首页 上页上页 下页下页节节末页末页结束结束463-3 3-3 算术运算与赋值运算算术运算

30、与赋值运算(完完)main()int a,b,c,d,e;a=2,b=5,c=6,d=10;a+=b;b-=c;c*=d;d/=a;a%=c;printf(“%d,%d,%d,%d,%dn”,a,b,c,d,a);7,-1,60,1,7 商商0 0余余7 7首页首页 上页上页 下页下页节节末页末页结束结束例例47l关系运算和逻辑运算经常作为条件语句和关系运算和逻辑运算经常作为条件语句和循环语句中的条件,其结果为一循环语句中的条件,其结果为一逻辑值逻辑值A和和B中至少有一个大于中至少有一个大于 CA和和B全部大于全部大于 CA为不大于为不大于100的偶数的偶数如何用如何用C语言描述语言描述33-

31、4-4 关系运算和逻辑运算符关系运算和逻辑运算符计算机语言为什么要计算机语言为什么要用关系和逻辑?用关系和逻辑?一、基本概念一、基本概念48 关系运算是一种比较运算,将两个值(表达式)关系运算是一种比较运算,将两个值(表达式)进行比较,判断比较的结果是否符合给定的条件进行比较,判断比较的结果是否符合给定的条件二、关系运算符二、关系运算符大于大于 ,大于等于大于等于=,小于,小于 ,不等不等!=,小于等于小于等于bc33-4-4 关系运算和逻辑运算符(续)关系运算和逻辑运算符(续)e1关系运算符关系运算符 e2C语言中没有专用的语言中没有专用的逻辑值,用数值逻辑值,用数值1和和0标识逻辑真和假。

32、标识逻辑真和假。1-真真 0-假假 算术式算术式100=13.5c5*18=90 (int)2.5!=2.550用逻辑运算符将关系用逻辑运算符将关系运算表达式或逻辑量运算表达式或逻辑量连接起来构成逻辑表连接起来构成逻辑表达式达式四四、逻辑运算符、逻辑运算符1.1.有三个有三个&(与与):两边为两边为1,结果为,结果为1|(或):两边有一个为(或):两边有一个为1,结果为,结果为1!(非):非(非):非1为为0,非,非0为为12.优先级:优先级:!的优先级高于的优先级高于&和和|!-&-|33-4-4 关系运算和逻辑运算符(续)关系运算和逻辑运算符(续)513.结合性:结合性:与和或是从左向右,

33、非是从右向左与和或是从左向右,非是从右向左五、逻辑表达式五、逻辑表达式任何非零实任何非零实数均可作为数均可作为逻辑上的逻辑上的1 1例:例:a=5,b=7,c=4,d=3x=(a+b)(c+d)&(da)先先做算术运算,做算术运算,再做关系判断,再做关系判断,将最后结果赋给将最后结果赋给x33-4-4 关系运算和逻辑运算符(续)关系运算和逻辑运算符(续)l逻辑符与运算分量构成逻辑表达式逻辑符与运算分量构成逻辑表达式l逻辑表达式的值是逻辑表达式的值是1 1或或0 0,表示真或假,表示真或假e1逻辑运算符逻辑运算符 e25252785278从左向右运算从左向右运算(52)(52)逻辑值为逻辑值为1

34、 1 (17)(17)逻辑值为逻辑值为0 0 (08)(08)逻辑值为逻辑值为0 0整个表达式的值为整个表达式的值为 0 0 在逻辑表达式中,并不是所有的逻辑运算在逻辑表达式中,并不是所有的逻辑运算都必须执行。都必须执行。l如果如果&的一边已经为的一边已经为0,结果一定为结果一定为 0l如果如果|的一边已经为的一边已经为 1,结果一定为结果一定为 1(1)a&b&c a非非0时再判断时再判断 b,a、b均非均非0再判断再判断c(2)a|b|c 若若a为非为非0,不必判断,不必判断 b和和 c,结果一定为结果一定为 1 33-4-4 关系运算和逻辑运算符(续)关系运算和逻辑运算符(续)例例53已

35、知已知:a=1,b=2,c=3,d=4,m=1,n=1执行执行(m=ab)&(n=cd)之后之后 m=?n=?由于由于 ab的值为的值为 0,&的结果一定为的结果一定为0,即,即 m=0(n=cd)不再运算,不再运算,n维持原有的值,即维持原有的值,即 n=1m=0n=114&4714!(23)|!(25)(4=7)33-4-4 关系运算和逻辑运算符(续)关系运算和逻辑运算符(续)例例10001求表达式的值:求表达式的值:54用用C语言描述语言描述1)a小于小于b或小于或小于c2但但a和和b都大于都大于c3)a和和b中有一个大于中有一个大于c4)a是非正整数是非正整数5)a是奇数是奇数6)a不

36、能被不能被b整除整除7)a是是带小数的正数,带小数的正数,b是是带小数的负数带小数的负数如何表示闰年如何表示闰年能够被能够被4整除同时不能被整除同时不能被100整除整除能够被能够被400整除整除33-4-4 关系运算和逻辑运算符(完)关系运算和逻辑运算符(完)553-5 3-5 位运算位运算一、一、位运算的基本概念位运算的基本概念首页首页 上页上页 下页下页节节末页末页结束结束 把整型数看作为一个二进制序列,按位进行六种运算 0010 0000 0101 0011563-5 3-5 位运算位运算二、二、位运算符位运算符首页首页 上页上页 下页下页节节末页末页结束结束 运算符运算符 含义含义 对

37、象个数对象个数 结合方向结合方向 优先级优先级 按位求反 单目 右 1 按位右移 双目 左 2&按位与 双目 左 3|按位或 双目 左 4 按位异或 双目 左 5 573-5 3-5 位运算位运算三、按三、按位与运算位与运算首页首页 上页上页 下页下页节节末页末页结束结束 a:1010,1001,0101,0111&b:0110,0000,1111,1011 c:0010,0000,0101,0011四、按四、按位或运算位或运算 a:1010,1001,0101,0111&b:0110,0000,1111,1011 c:1110,1001,1111,1111583-5 3-5 位运算位运算六、

38、移六、移位运算位运算首页首页 上页上页 下页下页节节末页末页结束结束 a:1101,0011 b=a2:0001,0011五、按五、按位异或运算位异或运算 a:1010,1001,0101,0111&b:0110,0000,1111,1011 c:1100,1001,1010,1100请课后看例题请课后看例题593-6 3-6 逗号运算符与逗号表达式逗号运算符与逗号表达式一、逗号一、逗号运算符运算符(表达式表达式 1,表达式表达式 2,表达式表达式 3,表达式表达式 n)用于连接几个表达式用于连接几个表达式l求解过程求解过程顺序求解几个表达式顺序求解几个表达式l优先级优先级(15)逗号运算符的

39、优先级最低逗号运算符的优先级最低l结合性结合性从左向右从左向右首页首页 上页上页 下页下页节节末页末页结束结束603-63-6逗号运算符与逗号表达式逗号运算符与逗号表达式(完完)二、逗号表达式二、逗号表达式(表达式表达式 1,表达式表达式 2,表达式表达式 3,表达式表达式 n)X=(a=4*5,a*2),a+6)a为为?x为为?首页首页 上页上页节节结束结束613-7 3-7 混合运算与数据类型转换混合运算与数据类型转换各类数值型数据间的混合运算各类数值型数据间的混合运算:将不同数据类型先转换成将不同数据类型先转换成同一类型同一类型,然后进行运算。然后进行运算。自动进行自动进行-隐式转换隐式

40、转换强制进行强制进行-显式转换显式转换一、隐式转换(算术转换)一、隐式转换(算术转换)优先级低的向优先级高的转换优先级低的向优先级高的转换首页首页 上页上页 下页下页节节末页末页结束结束623-7 3-7 混合运算与数据类型转换混合运算与数据类型转换(续)续)doubledoubledoubledoublefloatfloatfloatfloatlonglongunsignedunsignedintintchar char 精度高精度高精度高精度高精度低精度低精度低精度低例例2.0+1/2;2.0+1/2;表达式的表达式的值值?2.0首页首页 上页上页 下页下页节节末页末页结束结束633-7

41、3-7 混合运算与数据类型转换混合运算与数据类型转换(续)续)f f f f的类型的类型的类型的类型?intint doubledouble doubledoubledoubledouble已知:已知:int i;long e;float f;douible d;int i;long e;float f;douible d;f=10+a+i*f-d/e f=10+a+i*f-d/e doubledouble例例运算过程中的类型转换运算过程中的类型转换不是不是变变量本身数据类型的转换量本身数据类型的转换首页首页 上页上页 下页下页节节末页末页结束结束64二、强制类型转换二、强制类型转换(类型标识

42、符)(类型标识符)表达式表达式(int)int)(10+10+a+i*f-d/ea+i*f-d/e)将该结果强制将该结果强制转换为整型转换为整型还可以赋值转换,还可以赋值转换,输出转换等输出转换等3-7 3-7 混合运算与数据类型转换混合运算与数据类型转换(完)完)首页首页 上页上页节节结束结束65关于数据有效位的说明(关于数据有效位的说明(3_51.3_51.c c)/*3_51 有效位*/main()float x,y,a,b,c;a=123456789.1234567;b=123.1234567;c=12345.123456789;printf(%f,%en,x+y,x+y);printf(%f,%f,%fn,a,b,c);getch();66关于数据有效位的说明关于数据有效位的说明/*3_51 you xiao wei*/main()float x,y,a,b,c;a=123456789.1234567;b=123.1234567;c=12345.123456789;printf(%f,%en,x+y,x+y);printf(%f,%f,%fn,a,b,c);printf(%gn,x+y);printf(%g,%g,%en,a,b,c);getch();67

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

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁