第三章c语言程序设计初步知识.ppt
文本预览下载声明
各种进制之间的转换 二进制、八进制、十六进制转换成十进制 方法:按权相加 字节和位 内存以字节为单元组成 每个字节有一个地址 一个字节一般由8个二进制位组成 每个二进位的值是0或1 数值的表示方法——原码、反码和补码 原码: 最高位为符号位,正数为0,负数为 1,其余n-1位表示数的绝对值。 反码: 正数:反码与原码相同 负数:符号位为1,其余位对原码取反 补码: 正数:原码、反码、补码相同 负数:最高位为1,其余位为原码取反,再对整个数加1即负数的补码 等于它的反码加1 在补码表示 中,零有唯一的编码: ? [+0]补 = [-0]补 2.1 数据类型 数据类型总表 2.1.1数值的定点与浮点表示形式 1.定点数:不带指数部分的数称为定点数 2.浮点数:小数点的位置是“浮动的”的数称为浮点数 e.g. 3.15, -10; 2.8e+2, -0.341e-1 ※ C语言中整数属于定点数,实数一律作为浮 点数据存储,一般用4个字节存储。其中3个字节存放数字部分,一个字节存放指数部分(阶码)。 2.1.2字符类型数据的表示和存储形式 ※ 字符类型的数据在内存中以相应的ASCII p364代码存。 Ex2-1 字符的输入与输出 ※ 字符数据可以等价为与其相应的ASCII码的 整数,可以作为整数参与运算。 E.g. ‘A’+32 Ex2-2 字符的运算 说明:求模时模的符号与被除数的符号一致,且绝对值小于除数,商的符号与被除数、除数的积符号一致。9%2=1, 9%-2=1, -9%2= -1, -9%-2=-1 #include stdio.h main() { printf(%d,%d,%d,%d,9%2,9%-2,-9%2,-9%-2); } 关系运算注意: 条件运算符与表达式 一般形式: expr1 ? expr2 : expr3 执行过程 功能:相当于条件语句,但不能取代一般if语句 #include stdio.h main() { int a=1234; float f=123.456; printf(%08d\n,a); printf(%010.2f\n,f); printf(%0+8d\n,a); printf(%0+10.2f\n,f); } 输入分隔符的指定 一般以空格、TAB或回车键作为分隔符 其它字符做分隔符:格式串中两个格式符间字符 说明: 用“%c”格式符时,空格和转义字符作为有效字符输入 自增、自减运算符++ -- 作用:使变量值加1或减1 说明: ++ -- 不能用于常量和表达式,如5++,(a+b)++ ++ --结合方向: 自右向左 优先级:- ++ -- ------* / % -----+ - (2) (3) (4) 例 -i++ ? -(i++) i=3; printf(“%d”,-i++); //-3 例 j+++k; (j++)+k; 例 -i++ i=3; printf(“%d”,-i++); Ch2_009.c 赋值运算符和表达式 简单赋值运算符 符号: = 格式: 变量标识符=表达式 作用:将一个数据(常量或表达式)赋给一个变量 复合赋值运算符 种类:+= -= *= /= %= 《= 》= = ^= |= 含义: exp1 op= exp2 ? exp1 = exp1 op exp2 a+=3 a=a+3 x*=y+8 x=x*(y+8) x%=3 x=x%3 例 a=3; d=func(); c=d+2; 说明: 结合方向:自右向左 优先级: 14 左侧必须是变量,不能是常量或表达式 赋值表达式的值与变量值相等,且可嵌套 赋值转换规则:使赋值号右边表达式值自动转换成其左边变量的类型 例 3=x-2*y; a+b=3; 例 float f; int i; i=10; f=i; 则 f=10.0 例 int i; i
显示全部