基本数据类型及数据的输入输出.pptx
第二章基本数据类型及
数据的输入输出
2.0预备知识
2.1常量与变量
2.2数据类型
2.3常用输出与输入函数
练习与实践
2.0预备知识
计算机中数的表示及进制转换
数码、基与权
数码:表示数的符号
基:数码的个数
权:每一位所具有的值
数制
十进制数
数制
基
权
表示
数码
特点
…,10²,10¹10º
0~9
10
逢十进一
二进制数
0~1
2
…,2²,2¹,2º
逢二进一
八进制数
0~7
8
…,8²,8¹,8º
逢八进一
十六进制数
0~9,A~F,a~f
16
…,16²,16¹,16º
逢十六进一
十进制:4956=410³+910²+510¹+610º
二进制:1011=12³+02²+12¹+12º
十六进制:81AE=816³+116²+1016¹+1416º
八进制:4275=48³+28²+78¹+58º
语言程序设计
第二章数据描述
C
各种进制之间的转换
二进制、八进制、十六进制转换成十进制
方法:按权相加
语言程序设计
第二章数据描述
C
c程序设计
第二章基本数据类型及数据输入输出
C
例把十进制数59转换成二进制数
各种进制之间的转换(整数)
二进制、八进制、十六进制转换成十进制
方法:按权相加
十进制转换成二进制、八进制、十六进制
原理:
方法:连续除以基,从低到高记录余数,直至商为0
59
2
29
2
14
2
7
2
3
2
1
2
0
(59)10=(111011)2
1
1
0
1
1
1
111011
余
余
余
余
余
余
例把十进制数159转换成八进制数
159
8
19
8
2
8
0
(159)10=(237)8
237
余7
余3
余2
例把十进制数459转换成十六进制数
459
16
28
16
1
16
0
(459)10=(1CB)16
1CB
余11
余12
余1
语言程序设计
第二章数据描述
C
c程序设计
第二章基本数据类型及数据输入输出
C
二进制与八进制之间的转换
二进制转换成八进制:从右向左,每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
语言程序设计
第二章数据描述
C
c程序设计
第二章基本数据类型及数据输入输出
C
二进制与十六进制之间的转换
二进制转换成十六进制:从右向左,每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
语言程序设计
第二章数据描述
C
c程序设计
第二章基本数据类型及数据输入输出
C
字节和位
内存以字节为单元组成
每个字节有一个地址
一个字节一般由8个二进制位组成
每个二进位的值是0或1
0
1
2
3
4
5
6
7
0
1
2
3
4
5
6
7
8
9
10
……...
语言程序设计
第二章数据描述
C
7
6
4
3
2
5
1
c程序设计
第二章基本数据类型及数据输入输出
C
数值的表示方法——原码、反码和补码
原码:最高位为符号位,其余各位为数值本身的绝对值
反码:
正数:反码与原码相同
负数:符号位为1,其余位对原码取反
补码:
正数:原码、反码、补码相同
负数:最高位为1,其余位为原码取反,再对整个数加1
3
12
6
9
1
2
4
5
7
8
10
11
9-5=4
9+7=16=(14)12
语言程序设计
第二章数据描述
C
c程序设计
第二章基本数据类型及数据输入输出
C
为什么用补码表示?
25-19=25+(-19)
(25)10=2