内容正文:
2.3、2.4节:整型数据与实型数据
C语言程序设计
电子工业出版社
掌握整型、实型数据的表示方法及取值范围
能正确定义和使用整型、实型变量,区分常量类型
培养严谨的编程思维,提升代码规范与问题解决能力
知识目标
能力目标
素养目标
01
01
01
学习目标
目录
Part 01
教学导入
Part 02
知识讲授
Part 03
师生互动
Part 04
课堂练习
Part 05
课堂小结
教学导入
思考一下:在生活中,我们如何描述不同类型的数据?
人的年龄
数值:18岁
身高
数值:1.75米
体重
数值:65.5公斤
圆周率 π
数值:3.1415926...
这些数据在计算机中如何表示和存储呢?这就引出了我们今天的主题——数据类型
教学导入
整型数据
定义:用于表示没有小数部分的整数,是精确的数值类型。
生活示例:
年龄:18岁、25岁
数量:班级人数、书本数量
实型数据
定义:用于表示带有小数部分的实数,又称浮点型,提供更高精度。
生活示例:
身高体重:1.75米、65.5公斤
常数:圆周率 π ≈ 3.1415926
知识讲授
整型数据与实型数据
整型数据
实型数据
第一部分
整型数据
知识讲授
知识讲授
知识讲授:整型常量
概念定义
整型常量是由一系列数字组成的常数,不带小数点。例如年龄18、年份2024等。
C语言中的三种表示形式
十进制整型常量(如 123, -456)
八进制整型常量(以0开头,如 0123)
十六进制整型常量(以0x开头,如 0x1A)
例 子 说 明
-1234 十进制整型常量 (包含数字0~9)
01234 八进制整型常量(以0开头,包含数字0~7)
0x1234 十六进制整型常量
(以0x或0X开头,包含数字0~9、字母A~F或a~f)
0L long型十进制整型常量(以l或L结尾)
知识讲授:十、八、十六进制整型常量的转换
(1)八、十六进制转十进制
方法:按权展开相加
例如:
(1A.C)16=1*+10*+12*=(26.75)10
(2BD)16=2*162+11*161+13*160=(701)10
(12.3)8=1* +2* +3* =(10.375)10
(476)8=4*82+7*81+6*80=(318)10
知识讲授:十、八、十六进制整型常量的转换
(2)十进制转八进制
整数部分反复除,取余数,逆序排。
例:(588)10=(1114)8
整数部分(588)
588/8=73……4
73/8=9……1
9/8=1……1
1/8=0……1
(588)10=(1114)8
(2)十进制转十六进制
整数部分反复除,取余数,逆序排。
例:(4885)10=(1315)16
整数部分(4885)
4885/16=305……5
305/16=19……1
19/16=1……3
1/16=0……1
(4885)10=(1315)16
知识讲授:整型变量
核心定义
整型变量是专门用于存储整数数据的容器,是程序中最基础的数据类型之一。
基本型 (int)
最常用的整型类型,占用内存适中,适用于大多数整数存储场景。
短整型 (short)
占用内存比int少,取值范围较小,适合存储小范围整数以节省空间。
长整型 (long)
占用内存比int多,取值范围更大,用于存储较大的整数数值。
无符号型 (unsigned)
仅能存储非负整数(0及正数),利用所有二进制位表示数值。
知识讲授:整型变量
知识讲授:整型变量的取值范围
类型标识符 简写 数值范围 字节数
int int -32768~32767,即-215~(215-1) 2
unsigned int unsigned int 0~65535,即0~ (216 - 1) 2
short [int] short -32768~32767,即-215~(215-1) 2
unsigned short [int] unsigned short 0~65535,即0~(216-1) 2
long [int] long -2147483648~2147483647,即-231~(231-1) 4
unsigned long [int] unsigned long 0~4294967295,即0~(232-1) 4
核心提示:不同类型的整型变量占用的内存空间和表示的数值范围不同,选择时需根据数据大小权衡。
课堂问答
Q1: 整型常量有哪几种表示方法?
Q2: 八进制和十六进制常量的前缀分别是什么?
Q3: C语言中有哪几种整型变量类型?
答案:十进制、八进制(以0开头)、十六进制(以0x开头)
答案:八进制以0开头,十六进制以0x开头
答案:int、short、long、unsigned
背诵记忆
1. 十进制整型常量
由正负号和数字0~9组成,如 645, -56。
2. 八进制整型常量
由正负号和数字0 ~ 7组成,并且必须以0开头,如 034。
3. 十六进制整型常量
由正负号、数字0~9和字符a~f(或A~F)组成,并且必须以0x或0X开头,如 0xd。
类型标识符 数值范围 字节数
int -32768~32767 2
unsigned int 0~65535 2
short [int] -32768~32767 2
unsigned short [int] 0~65535 2
long [int] -231~(231-1) 4
unsigned long [int] 0~(232-1) 4
例题分析
题目:判断合法整型常量
1. 123
2. 0123
3. 0x123
4. 123.0
5. 0xG12
解析与分析
合法:十进制形式,标准整数写法。
合法:八进制形式(以0开头,数字0-7)。
合法:十六进制形式(以0x开头,含a-f)。
不合法:带有小数点,属于实型常量。
不合法:十六进制中出现非法字符G。
例题分析
代码示例:整型变量定义
// 定义整型变量并赋值
int a = 10;// 定义一个int型变量a,赋值为10
short b = 20;// 定义一个short型变量b,赋值为20
long c = 30L;// 定义一个long型变量c,赋值为30L
unsigned int d = 40;// 定义一个无符号int型变量d
核心知识点解析
基本定义格式
遵循标准语法:类型 变量名 = 初始值; 这是C语言中变量定义的基础结构。
长整型常量后缀
为了明确区分长整型,建议在数值后添加后缀 L 或 l,例如代码中的 30L。
无符号类型限制
unsigned 关键字修饰的变量只能存储非负整数,不能赋值为负数。
课堂练习:整型常量判断
请判断以下常量是否为合法的整型常量,并简要说明原因:
0567
-0xAb
789
0987
0x1g
答案:合法,这是一个八进制整型常量(以0开头,数字0-7)。
答案:合法,这是一个十六进制整型常量(以0x开头,包含字母a-f)。
答案:合法,这是一个十进制整型常量。
答案:不合法,八进制常量中不能出现数字9。
答案:不合法,十六进制常量中不能出现字母g。
-86600
答案:合法,这是一个十进制整型常量
课堂练习
题目 1:判断常量类型
请判断以下常量分别属于什么数据类型:123, 0123, 0x123, -456
题目 2:编写代码定义变量
请写出定义一个长整型变量 age 并赋值为 20 的代码。
参考答案
Q1. 整型常量表示
十进制:123
八进制:0123 (以0开头)
十六进制:0x123 (以0x开头)
负数:-456
Q2. 定义长整型变量
long age = 20L;
第二部分
知识讲授
实型数据
知识讲授
知识讲授:实型常量
概念定义
实型常量是指数的集合,又称浮点型,主要用于表示小数。
C语言表示形式
十进制小数形式:由数字和小数点组成
指数形式:类似数学中的科学计数法 (e/E)
知识讲授:十进制小数形式
定义
由正负号、数字0~9和小数点组成。
注意事项
必须包含小数点,这是实型常量的标志,即使小数部分为0也不可省略。
合法示例
0.123 123. 123.0 0.0 -1.2
1234.56 .5 6. 100000000.0 -1.4
知识讲授:指数形式
2. 指数形式 (科学计数法)
组成要素
由正负号、数字(0-9)、小数点和字母 E(或 e) 组成。
标准格式
格式为 aEn,其中 a 为十进制数,n 为十进制整数。
典型示例
2.1E5 表示 2.1 × 10⁵
-2.8E-2 表示 -2.8 × 10⁻²
转换过程示意图
知识讲授:实型变量
基本定义
实型变量是专门用于存储实型数据(即小数)的变量类型,在C语言中用于处理带有小数部分的数值计算。
C语言中的实型变量类型
单精度型 (float)
占用4个字节,有效数字约6-7位。
双精度型 (double)
占用8个字节,有效数字约15-16位。
长双精度型 (long double)
占用8/16字节,提供更高精度支持。
知识讲授:实型变量的取值范围与精度
类型标识符 有效数字 数值范围 字节数
float 6 ~ 7 10-37 ~ 1038 4
double 15 ~ 16 10-307 ~ 10308 8
long double 18 ~ 19 10-4931 ~ 104932 16
核心提示:不同类型的实型变量的精度和数值范围不同。double类型的精度和范围都比float大,是实际编程中最常用的浮点类型。
课堂问答
Q1: 实型常量有哪几种表示方法?
答案:十进制小数形式和指数形式。
Q2: 指数形式的一般格式是什么?
答案:aEn(a为十进制数,n为十进制整数)。
Q3: C语言中有哪几种实型变量类型?
答案:float(单精度型)、double(双精度型)、long double(长双精度型)。
例题分析
题目要求
解析与答案
123.45 =1.2345E2
0.000123 =1.23E-4
-1234500 =-1.2345E6
请将下列数值用指数形式表示:
123.45
0.000123
-1234500
例题分析
代码示例:实型变量定义
/* 定义实型变量并赋值 */
float pi =3.14f;
double distance =12345.6789;
long double precise_num =1.23456789012345L;
关键点解析
float 类型后缀
常量建议加后缀 f 或 F,否则编译器会默认将其视为 double 类型。
double 类型默认
在 C 语言中,实型常量(如 123.45)默认存储为 double 类型,精度更高。
背诵记忆
实型常量的两种表示方法
1. 十进制小数形式
由正负号、数字和小数点组成。
示例:123.45, 0.123, -56.78
2. 指数形式 (科学计数法)
格式为 aEn,a是十进制数,n是整数。
示例:
2.1E5 (2.1×10⁵)
-3.68e-2 (-3.68×10⁻²)
C语言实型变量类型参数
类型 大小 有效数字 数值范围
float 4字节 6-7位 10-37~1038
double 8字节 15-16位 10-307~10308
long double 16字节 18-19位 10-4931~104932
核心要点总结
double类型最常用:精度更高,是程序设计中的首选。
近似存储特性:比较浮点数相等时应使用差值比较法。
课堂练习:实型常量的表示
请将下列数值分别用十进制小数形式和指数形式表示:
题目 1:3.14159
题目 2:0.0025
题目 3:-1000.0
答案:十进制小数形式:3.14159;指数形式:3.14159E0
答案:十进制小数形式:0.0025;指数形式:2.5E-3
答案:十进制小数形式:-1000.0;指数形式:-1.0E3
课堂小结
整型数据
常量表示
十进制:常规数字
八进制:0开头 (如 012)
十六进制:0x开头 (如 0xA)
变量类型
int, short, long, unsigned
注意取值范围与字节数
实型数据
常量表示
小数形式:必须含小数点
指数形式:aEn (如 1.2e3)
变量类型
float:4字节,6-7位有效数字
double:8字节,15-16位有效数字
关键原则
先定义,后使用
变量在使用前必须进行声明定义,这是语法规范的基础。
类型匹配原则
根据数据的实际特点(如是否有小数、数值范围)选择最合适的类型,避免浪费内存或溢出。
课堂小结
重点与易错点
核心重点
掌握不同数据类型的定义、表示方法和数值范围。
理解常量的不同表示形式,包括进制转换和指数表示。
常见易错点
八进制和十六进制常量的前缀(0和0x)容易混淆或遗漏。
实型常量必须包含小数点,注意区分整数与浮点数。
变量定义时的类型匹配和格式控制符的正确使用。
课后任务
复习与背诵
复习本节课内容,重点背诵整型和实型数据的核心知识点。
编程实践
编写程序,定义不同类型的整型和实型变量,并完成赋值与输出操作。
深度思考
思考:为什么计算机语言需要设计不同的数据类型?它们的存在有何意义?
谢谢观看
THANKS
EV录屏5.4.8软件录制
Lavf58.33.100
本视频由湖南一唯信息科技开发的EV录屏软件录制, www.ieway.cn
EV录屏5.4.8软件录制
Lavf58.33.100
本视频由湖南一唯信息科技开发的EV录屏软件录制, www.ieway.cn
EV录屏5.4.8软件录制
Lavf58.33.100
本视频由湖南一唯信息科技开发的EV录屏软件录制, www.ieway.cn
$