c3(数据类型运算符与表达式).pptVIP

  • 0
  • 0
  • 约1.34万字
  • 约 44页
  • 2016-12-10 发布于重庆
  • 举报
c3(数据类型运算符与表达式)

各种进制之间的转换 二进制、八进制、十六进制转换成十进制 方法:按权相加 字节和位 内存以字节为单元组成 每个字节有一个地址 一个字节一般由8个二进制位组成 每个二进位的值是0或1 数值的表示方法——原码、反码和补码 原码:最高位为符号位,其余各位为数值本身的绝对值 反码: 正数:反码与原码相同 负数:符号位为1,其余位对原码取反 补码: 正数:原码、反码、补码相同 负数:最高位为1,其余位为原码取反,再对整个数加1 2.1 数据类型 一个程序应包括以下两方面内容: (1) 对数据的描述。在程序中要指定数据的类型和数据的组织形式,即数据结构(data structure)。 (2) 对操作的描述。即操作步骤,也就是算法(algorithm)。 据是操作的对象,操作的目的是对数据进行加工处理,以得到期望的结果。 程序=算法+数据结构+程序设计方法+语言工具和环境 数据类型总表 关系运算注意: 条件运算符与表达式 一般形式: expr1 ? expr2 : expr3 执行过程 功能:相当于条件语句,但不能取代一般if语句 说明: 结合方向:自右向左 优先级: 14 左侧必须是变量,不能是常量或表达式 赋值表达式的值与变量值相等,且可嵌套 赋值转换规则:使赋值号右边表达式值自动转换成其左边变量的类型 例 3=x-2*y; a+b=3; 例 float f; int i; i=10; f=i; 则 f=10.0 例 int i; i=2.56; //结果i=2; 例: a=b=c=5 a=(b=5) a=5+(c=6) a=(b=4)+(c=6) a=(b=10)/(c=2) //表达式值为5,a,b,c值为5 // b=5;a=5 //表达式值11,c=6,a=11 //表达式值10,a=10,b=4,c=6 //表达式值5,a=5,b=10,c=2 语言程序设计 第二章数据描述 C 说明: 结合方向:自右向左 优先级: 12 左侧必须是变量,不能是常量或表达式 赋值表达式的值与变量值相等,且可嵌套 赋值转换规则:使赋值号右边表达式值自动转换成其左边变量的类型 例: a=12; a+=a-=a*a 例: int a=2; a%=4-1; a+=a*=a-=a*=3; //a=-264 等价于a=a+(a=a-(a*a)) //a=0 等价于a=a+(a=a*(a=a-(a=a*3))) 语言程序设计 第二章数据描述 C 逗号运算符和表达式 形式:表达式1,表达式2,……表达式n 结合性:从左向右 优先级: 15 逗号表达式的值:等于表达式n的值 用途:常用于循环for语句中 例 a=3*5,a*4 a=3*5,a*4,a+5 例 x=(a=3,6*3) x=a=3,6*a 例 a=1;b=2;c=3; printf(“%d,%d,%d”,a,b,c); printf(“%d,%d,%d”,(a,b,c),b,c); //a=15,表达式值60 //a=15,表达式值20 //赋值表达式,表达式值18,x=18 //逗号表达式,表达式值18,x=3 //1,2,3 //3,2,3 语言程序设计 第二章数据描述 C 逗号运算符和表达式 形式:表达式1,表达式2,……表达式n 结合性:从左向右 优先级: 15 逗号表达式的值:等于表达式n的值 用途:常用于循环for语句中 例: /*ch2_6.c*/ #include stdio.h main() { int x,y=7; float z=4; x=(y=y+6,y/z); printf(x=%d\n,x); } 运行结果:x=3 语言程序设计 第二章数据描述 C 关系运算符和表达式 关系运算符 种类: = == = != 结合方向:自左向右 优先级别: = = == != 优先级6(高) 优先级7(低) 例 ca+b //c(a+b) ab!=c //(ab)!=c a==bc //a==(bc) a=bc //a=(bc) 关系表达式的值:是逻辑值“真”或“假”,用1和0表示 例 int a=3,b=2,c=1,d,f; ab (ab

文档评论(0)

1亿VIP精品文档

相关文档