文档详情

高级语言程序设计(c)3数据类型.pptx

发布:2025-05-25约6.9千字共10页下载文档
文本预览下载声明

1

第三章数据类型

梁春燕

华电信息管理教研室

2

主要内容

预备知识

C语言的数据类型

常量与变量

不同类型数据间的转换

小结

上机作业2

预备知识

3

计算机中数的表示及进制转换

数码、基与权

数码:表示数的符号

基:数码的个数

权:每一位所具有的值

数制

二进制、八进制、十六进制、十进制

3

12

9

1

2

4

8

10

11

9+7=16=(14)12

各种进制之间的转换

4

方法:按权相加

二进制、八进制、十六进制转换成十进制

各种进制之间的转换

5

十进制转换成二进制、八进制、十六进制

方法:连续除以基,直至商为0,从低到高记录余数。

例把十进制数459转换成十六进制数

459

16

28

16

1

16

0

(459)10=(1CB)16

1CB

余11

余12

余1

各种进制之间的转换

6

二进制转换成八进制:

从右向左,每3位一组(不足3位左补0),转换成八进制

八进制转换成二进制:

用3位二进制数代替每一位八进制数

例(1101001)2=(001,101,001)2=(151)8

例(246)8=(010,100,110)2=2

000~0

001~1

010~2

011~3

100~4

101~5

110~6

111~7

二进制与八进制之间的转换

各种进制之间的转换

7

二进制转换成十六进制:

从右向左,每4位一组(不足4位左补0),转换成十六进制

十六进制转换成二进制:

用4位二进制数代替每一位十六进制数

例2=(0011,0101,0111,1101)2=(357D)16

例(4B9E)16=(0100,1011,1001,1110)22

0000~0

0001~1

0010~2

0011~3

0100~4

0101~5

0110~6

0111~7

1000~8

1001~9

1010~A

1011~B

1100~C

1101~D

1110~E

1111~F

二进制与十六进制之间的转换

字节和位

8

内存以字节为单元组成

每个字节有一个地址

一个字节一般由8个二进制位组成

每个二进位的值是0或1

0

1

2

3

4

5

6

7

8

9

10

……...

7

6

4

3

2

5

1

76543210

数值的表示方法——原码、反码和补码

9

原码:最高位为符号位,其余各位为数值本身的绝对值

反码:

正数:反码与原码相同

负数:符号位为1,其余位对原码取反

补码:

正数:原码、反码、补码相同

负数:最高位为1,其余位为原码取反,再对整个数加1

原码

反码

补码

+700000111-711111000+000000000-011111111数的范围(-127~+127)(-127~+127)(-128~+127)

负数补码转换成十进制数:最高位不动,其余位取反加1

例补码取反加1:-7

(用一字节表示数)

数据类型

11

数据类型总表

C

基本类型

构造类型

指针类型

空类型void

定义类型typedef

字符类型char

数组

整型

浮点型

单精度型float

双精度型double

枚举类型enum

结构体struct

共用体union

短整型short

长整型long

整型int

数据类型决定:

1.数据占内存字节数

2.数据取值范围

3.其上可进行的操作

(signed)int

基本数据类型

12

类型

符号

关键字

数的表示范围

所占字节数

(位数)

整型

字符型

实型

2(16)

-32768~32767

(signed)short

2(16)

-32768~32767

(signed)long

4(32)

-2147483648~2147483647

2(16)

unsignedint

0~65535

4(32)

0~4294967295

unsignedlong

unsignedshort

2(16)

0~65535

float

4(32)

-3.4e-38~3.4e38

double

8(64)

-1

显示全部
相似文档