第2章 数据类型 0.pptVIP

  • 0
  • 0
  • 约1.76万字
  • 约 43页
  • 2016-12-15 发布于北京
  • 举报
各种进制之间的转换 二进制、八进制、十六进制转换成十进制 方法:按权相加 字节和位 内存以字节为单元组成 每个字节有一个地址 一个字节一般由8个二进制位组成 每个二进位的值是0或1 数值的表示方法——原码、反码和补码 原码:最高位为符号位,其余各位为数值本身的绝对值 反码: 正数:反码与原码相同 负数:符号位为1,其余位对原码取反 补码: 正数:原码、反码、补码相同 负数:最高位为1,其余位为原码取反,再对整个数加1 2.1 数据类型 数据类型总表 关系运算注意: 条件运算符与表达式 一般形式: expr1 ? expr2 : expr3 执行过程 功能:相当于条件语句,但不能取代一般if语句 说明: 结合方向:自右向左 优先级: 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 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 逗号运算符和表达式 形式:表达式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 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 逗号运算符和表达式 形式:表达式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 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 关系运算符和表达式 关系运算符 种类: = == = != 结合方向:自左向右 优先级别: = = == != 优先级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)==c b+ca d=ab f=abc //表达式值1 //表达式值1 //表达式值0 //d=1 //f=0 语言程序设计 第二章数据描述 C Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 例 若a=0;

文档评论(0)

1亿VIP精品文档

相关文档