c语言中变量的生存期取决于,浙江大学C语言总习题—基本数据类型和运算.doc

浙江大学C语言总习题—基本数据类型和运算

第2章 基本数据类型和运算

学习和解题要点

数据类型

C 语言中的数据类型比别的语言丰富。要学好这部分内容,首先要掌握C 语言的数据在内存中的表示。

整型数据:以二进制的形式表示

(1) int 类型

正数: 如 123 (+123)用 16 位二进制(二个字节)表示

原码

反码(原码同)

补码(原码同)

最大正整数

215-1=214+213+212+211+210+29+2827+26+25+24+23+22+21+20=32767

负数:如 –123

原码

反码(符号位不动,其它取反)

补码(补码加 1)

已知补码求原负数 符号位不动,其它取反加 1

取反 加1

最大负整数

-215=32768 因为 -215 < -(215-1) 所以用 -215 而不用 -(215-1)

(2) unsigned (int) 类型

称为无符号整数,它不是指不带“+ 或 -”号的整数,而是指内存表示这类数时没有符号位,16 位二进制都用来表示数,因此

最大数

215+214+213+212+211+210+29+2827+26+25+24+23+22+21+20=65535

最小数 0

(3) long (int) 类型

用 32 位二进制(四个字节)表示,其他同 int 型

(4) short 类型

有的计算机(小型、中型、大型机)int 即是 long ,而short用16 位二进制(二个字节)表示。因此C语言中,short一定是短整型,long一定是长整型,而int因不同的系统而不同。PC 586 机int即short,所以一般不用short 。

(5) 在C语言中,整型常量有三种形式的写法:

十进制整数(0 - 9)表示。通常整数的写法。

八进制整数(0 - 7)表示。在整数的前面加数字0。

十六进制整数(0 - f)表示。在整数的前面加0x。

长整型常量表示方法:在整数的后面加L或 l。

字符型数据:以二进制的形式表示

char 型 用 8位二进制(一个字节)表示

如 ‘a’ , 26+25+20=97 即ASCII 码 97

实型数据:以二进制的形式表示

(1) float 类型

如 123.45 (+123.45)用 32 位二进制(四个字节)表示为 0.12345×103

不同的系统,n的位数有不同,n长,精度高,但可表示的指数小,能表示的数的范围小。反之,则能表示的数的范围大,但精度低。float 类型又称为“浮点” 类型,把实数的小数点都看成在第一位,而用指数位“浮动”小数点。

(2) double 类型

与float同只不过用 64 位二进制(八个字节)表示。因此精度高,称双精度。

变量的概念

C语言中的变量可以理解成计算机内存的一个空间,它必须有一个名字(标识符),可放什么样的数据类型(如定义时前面加int 、float 、char 等),它是开辟在内存的一般数据区(又称静态数据区)还是开辟在内存的堆栈区(又称动态数据区),这可由程序中用static或auto(可缺省)来规定。同时,一个变量有它的有效的使用范围,称之为作用域。最后,每个变量都有地址,这在指针类型时要用到。变量可以一边定义一边赋初值,在程序运行时可以使它发生变化,因此称之为变量。

运算符的注意事项

双目运算符 % 的两边一定是要整数,运算结果是整除后的余数,也是整数,注意 2%5 得2而不是 0。

双目运算符 / 的两边如果是整数,则结果也是整数,5/2 结果为 2而不是 2.5 ,即使是 float x; x=1/2; x 中也只有 0.0 , 要人为的写成 x=1/2.0 或 x=1.0/2 ,x中才是0.5 。

单目运算符 ++ -- 放在运算对象的前面时,称为“先加(减) 1,后使用”,这一般不会搞错。当放在运算对象的后面时,称为“先使用,后加(减) 1”,这时要注意什么时候“使用”。

如 i=3; (i++)+(i++)+(i++) 结果是9而不是12,这里,三个i相加是“使用”,使用后才三次加1,i成为6,“使用”是以整个表达式为准。

而 i=3; (++i)+(++i)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值