数据类型及运算
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(P27)
#define 例如: #define
标识符 PI
常量 3.14
含义:定义PI为符号常量(习惯用大写字 母),其值为3.14
5
二、简单变量
简单变量以标识符命名。 简单变量的类型定义: 类型名 变量名1,变量名2, ......,变量名n; int a,b,c; /* a,b,c 为整型变量 */ float x,y,z; /* x,y,z 为单精度浮点型变量 */
转义 字符
A
B
26
常用的整型输出格式控制符
输出格式符 含义 以十进制形式输出 int型 以十进制形式输出 unsigned int型 以八进制形式输出 int或unsigned int型 以十六进制形式输出 int或unsigned int型
%d %u %o %x(%X) A
%ld、%lo、 以十,八,十六进制形式输出 long型 %lx(%lX) 例:int i=15; printf("%d %o %x", i, i, i); 输出: 15 17 f
A B
#include <math.h>
函数原型 double log(double x) double log10(double x) double sqrt(double x) 功能 计算 lnx (自然对数) 计算 lgx (常用对数) 计算 x
#include <stdlib.h>
功能 产生一个0到32767之间 int rand(void) 的伪随机整数 用参数seed作随机数种 void srand(unsigned seed) 子,设置伪随机数序列的开 始点 23 函数原型
A B
3.4.4(1) 格式化输入输出 –以数值型为例
#include <stdio.h> printf 函数:格式化输出函数 scanf 函数:格式化输入函数
A B
24
一、格式化输出函数:printf()
格式化输出函数调用格式:
printf (”格式控制串”,输出项表列)
例:printf(”a=%d ,b=%d ,c=%பைடு நூலகம்\n”,a,b,sum); 一、输出项表列
11
A B
整型数据在内存中的存储形式
----以有符号 2 字节整型为例 0 的 16位编码 原码:00000000 00000000 反码:00000000 00000000 补码:00000000 00000000 -0 的 16位编码 原码:10000000 00000000 反码:11111111 11111111 补码:00000000 00000000
不允许连续赋初值: A 方法2)先定义变量,再用赋值语句赋值
3.4(1) 库函数
函数的分类:
–以数值型为例
库函数:由系统定义,提供给程序员直接调用 自定义函数:由程序员自己定义
库函数的原型举例:
函数名sin 形参x、double型
A
返回值为double型
double sin( double x ) 函数功能:求sin(x)
21
A B
3.4.2 常用的数学函数
#include <math.h>
函数原型 double sin(double x) double cos(double x) double tan(double x) int abs(int n) double fabs(double x) long labs(long j) double exp(double x) double pow(double x, double y) 功能 计算 sinx 计算 cosx 计算 tgx 计算 |n|,n为整数 计算 |x|,x为浮点数 计算 |j|, j为长整型 计算 ex, e为自然数 计算 xy 22
A B
第三章(1) 数值类型及其输入输出
3.1 C语言的数据类型
3.2(1) 常量 –––以数值型为例 3.3(1) 简单变量 –––以数值型为例 A B
2
3.4(1) 数学函数、格式输入输出函数
–––以数值型为例
3.1 C语言的数据类型
整型 数值型 基本类型 字符型 枚举类型 指针类型 数据类型 数组类型 构造类型 结构类型 联合类型 浮点型 单精度型 双精度型 长双精度型
double a1, a2; A B
18
六、变量赋初值
方法1) 变量初始化 在定义变量的同时为变量赋初值 如: int sum=0; float x=5.89; int o,p,q=8; int a=b=c=8; 如: int sum; B sum=0; /*赋值语句*/
19
/*只有q 赋了初值8 */ ×
B
9
(一)整型数据在内存中的存储形式
----以有符号 2 字节整型为例 10 的 16位编码 原码:00000000 00001010 反码:00000000 00001010 补码:00000000 00001010 -10 的 16位编码 原码:10000000 00001010 反码:11111111 11110101 补码:11111111 11110110 正数的补码 =反码=原码
20
B
3.4.1 库函数的使用方式
库函数的调用前提
需在程序头部用#include命令将库函数的头 文件包含到本程序中。 例如: #include <math.h> 或 #include "math.h"
库函数调用的格式 函数名( [实参列表] )
例如:sin(3.1415926) sin(3.0) 或 sin(3) 注意:函数调用时, 实参、函数名前不能 加类型名
A B
14
(三)整型变量的定义
整型变量的定义形式: 整型类型名 变量名1,变量名2,……,变量名n;
如:int a,b,c;
A B
15
五、浮点型数据
类型
单精度 双精度 长 双精度
类型名
float double long double
长度
4字节 8字节 10字节
绝对值范围
3.4*10-38~ 3.4*1038 1.7*10-308~1.7*10308 3.4*10-4932~3.4*104932
表示:123*102 ,2.45*10-2 其中,123、2.45 称为尾数部分,2、-2 称为指数部分。 注意:尾数部分不能空,指数部分必须为整数。 例如:
A B
e+3、2.03e+0.5 都是错误的!
17
(二)浮点型变量的定义
浮点型变量的定义形式: 浮点型类型名 如: float 变量名1,变量名2,……,变量名n; a, b, c;
长度
2字节
表示范围
-215~(215-1) 即-32768~32767 -231~(231-1) 约-2.1*109~2.1*109 约-21亿~21亿 0~(216-1) 即 0~65535
4字节
2字节
A
无符号 0~(232-1) unsigned long int 4字节 约0~4.3*109 长整型 注:1)int取自integer 2)有符号整数在计算机中按定点整数的补码存储。
注意事项: 注意事项: (1) (1) 变量必须先定义后使用,标准C规定定义语句必须 变量必须先定义后使用,标准C规定定义语句必须 放在所有可执行语句之前; 放在所有可执行语句之前; (2) (2) 每个变量必须且只能被指定为一种类型; 每个变量必须且只能被指定为一种类型; (3) (3) 一般习惯上用小写字母表示变量名, 一般习惯上用小写字母表示变量名, 用大写字母 用大写字母 表示符号常量名,以示区别。(仅是习惯不是规定) 表示符号常量名,以示区别。(仅是习惯不是规定) 6 多个变量间 逗号分隔
有效位数 7 16 19
注:浮点型数据在计算机中按规范化 浮点数形式存储,例如:
数 符 尾 数 指数 符号 指 数 16
A B
(一)浮点型常量的表示形式
1、十进制小数形式: 如: 5.123(默认为double型),2.45F(指定为float型) 0.123可表示为.123, 123.0可表示为123. 底数10用e或E表示 2、十进制指数形式:如:123e2,2.45E-2
内存中存储形式
负数的补码 =反码+1 =原码取反+1
内存中存储形式 10
A B
整型数据在内存中的存储形式
----以有符号 2 字节整型为例 32767(215-1)的 16位编码 原码:01111111 11111111 反码:01111111 11111111 补码:01111111 11111111 内存中存储形式 -32767(1-215)的 16位编码 原码:11111111 11111111 反码:10000000 00000000 补码:10000000 00000001 内存中存储形式
13
如:0X42
表示4*16+2=(66)10
0xA2F 表示10*162+2*16+15=(2607)10
整数常量的后缀: (1)整数常量后面加字母 l 或 L ,则指定该整 数为long型 如 -123l ,0x42L (2)整数常量后面加字母 u 或 U,则指定该整 数为unsigned型 如 123u ,0102U
A B
三、C 语言的标识符 [P28]
标识符: 用来标识变量名、符号常量名、函数名、 数组名、类型名的有效字符序列。 标识符命名规则: ① 由字母、数字、下划线组成,且只能以字母或 下划线开头; ② 关键字不能作为标识符;( C语言的关键字共有32 个,见P306附录B) ③ 不同系统对长度有不同的要求, VC要求长度不 超过247个字符。
INT
√ × “.”不能作标识符 √ × “-”不能作标识符 √ × 不能以数字开头 × 关键字不能作标识符 √
8
A B
四、整型数据
类型
(有符号) 短整型 (有符号) 长整型 无符号 短整型
类型名
[signed] short int 简称 short TC的基本整型 int [signed] long int 简称 long VC的基本整型 int unsigned short int
一个或多个输出项组成 ( 多个之间用逗号隔开 ) ,常量、 变量、函数、表达式等均可做输出项。
二、格式控制串 组成:
1.“%”起头的输出项格式控制符(与输出项一一对应) 2.普通字符(原样输出) 3.反斜杠“\”起头的转义字符 25
A B
例:#include <stdio.h> 格式控制符与输出项 int main( ) 一一对应 { int a,b,sum; a=123; b=456; sum=a+b; printf(”a=%d ,b=%d ,c=%d\n”, a, b, sum); return 0; 原样 输出 } 结果: a=123 ,b=456 ,c=579 (换行)
第三章 数据类型、运算符与表达式
3.1 C语言的数据类型 3.2 常量 3.3 简单变量 3.4 库函数 3.5 运算符和表达式
数据类型 数值类型及其输入输出 及其 字符类型及其输入输出 输入输出 字符串及其输入输出
分块讲解
算术运算、赋值运算、强制类型转换、增量运算 关系运算、逻辑运算、条件运算 运算符和 逗号运算 表达式 位运算 求字节数运算 1
A B
空类型void 3
3.2~3.3(1) 常量与简单变量–以数值型为例
• 常量: 在程序运行中,其值不变的量,如: 23.7, - 67 等。 • 变量: 在程序运行过程中,其值可以改变的量, 在内存中占据一定的存储单元。
变量a 150 50
A B
4
一、两类常量
常数常量和符号常量 常数常量 如-10, 3.14 符号常量: 用标识符表示的常量。符号常量用 预处理(宏定义)命令定义在函数之外。 定义形式: A B
内存中存储形式
A B
补码没有-0
补码:10000000 00000000 被定义为-215即-32768
12
(二)整型常量的表示方法
int型常量的表示方法: 十进制: 如: 123 , 0 , -125 八进制: 以数字 0 开头,如:0102
表示1*82+2=(66)10
十六进制: 以 0x 或 0X 开头(0为数字) A B
注意: 语言标识符中大、小字母有区分。 注意:* *C C 语言标识符中大、小字母有区分。 * “ 简单明了 ” 、 “ 见名知意 ” 。 * 命名尽量做到 命名尽量做到 “ 简单明了 ” 、 “ 见名知意 ” 。 7
A B
判断下列用户标识符的合法性:
a1 First.name a_b a-b abc123 3rd_row int
#define 例如: #define
标识符 PI
常量 3.14
含义:定义PI为符号常量(习惯用大写字 母),其值为3.14
5
二、简单变量
简单变量以标识符命名。 简单变量的类型定义: 类型名 变量名1,变量名2, ......,变量名n; int a,b,c; /* a,b,c 为整型变量 */ float x,y,z; /* x,y,z 为单精度浮点型变量 */
转义 字符
A
B
26
常用的整型输出格式控制符
输出格式符 含义 以十进制形式输出 int型 以十进制形式输出 unsigned int型 以八进制形式输出 int或unsigned int型 以十六进制形式输出 int或unsigned int型
%d %u %o %x(%X) A
%ld、%lo、 以十,八,十六进制形式输出 long型 %lx(%lX) 例:int i=15; printf("%d %o %x", i, i, i); 输出: 15 17 f
A B
#include <math.h>
函数原型 double log(double x) double log10(double x) double sqrt(double x) 功能 计算 lnx (自然对数) 计算 lgx (常用对数) 计算 x
#include <stdlib.h>
功能 产生一个0到32767之间 int rand(void) 的伪随机整数 用参数seed作随机数种 void srand(unsigned seed) 子,设置伪随机数序列的开 始点 23 函数原型
A B
3.4.4(1) 格式化输入输出 –以数值型为例
#include <stdio.h> printf 函数:格式化输出函数 scanf 函数:格式化输入函数
A B
24
一、格式化输出函数:printf()
格式化输出函数调用格式:
printf (”格式控制串”,输出项表列)
例:printf(”a=%d ,b=%d ,c=%பைடு நூலகம்\n”,a,b,sum); 一、输出项表列
11
A B
整型数据在内存中的存储形式
----以有符号 2 字节整型为例 0 的 16位编码 原码:00000000 00000000 反码:00000000 00000000 补码:00000000 00000000 -0 的 16位编码 原码:10000000 00000000 反码:11111111 11111111 补码:00000000 00000000
不允许连续赋初值: A 方法2)先定义变量,再用赋值语句赋值
3.4(1) 库函数
函数的分类:
–以数值型为例
库函数:由系统定义,提供给程序员直接调用 自定义函数:由程序员自己定义
库函数的原型举例:
函数名sin 形参x、double型
A
返回值为double型
double sin( double x ) 函数功能:求sin(x)
21
A B
3.4.2 常用的数学函数
#include <math.h>
函数原型 double sin(double x) double cos(double x) double tan(double x) int abs(int n) double fabs(double x) long labs(long j) double exp(double x) double pow(double x, double y) 功能 计算 sinx 计算 cosx 计算 tgx 计算 |n|,n为整数 计算 |x|,x为浮点数 计算 |j|, j为长整型 计算 ex, e为自然数 计算 xy 22
A B
第三章(1) 数值类型及其输入输出
3.1 C语言的数据类型
3.2(1) 常量 –––以数值型为例 3.3(1) 简单变量 –––以数值型为例 A B
2
3.4(1) 数学函数、格式输入输出函数
–––以数值型为例
3.1 C语言的数据类型
整型 数值型 基本类型 字符型 枚举类型 指针类型 数据类型 数组类型 构造类型 结构类型 联合类型 浮点型 单精度型 双精度型 长双精度型
double a1, a2; A B
18
六、变量赋初值
方法1) 变量初始化 在定义变量的同时为变量赋初值 如: int sum=0; float x=5.89; int o,p,q=8; int a=b=c=8; 如: int sum; B sum=0; /*赋值语句*/
19
/*只有q 赋了初值8 */ ×
B
9
(一)整型数据在内存中的存储形式
----以有符号 2 字节整型为例 10 的 16位编码 原码:00000000 00001010 反码:00000000 00001010 补码:00000000 00001010 -10 的 16位编码 原码:10000000 00001010 反码:11111111 11110101 补码:11111111 11110110 正数的补码 =反码=原码
20
B
3.4.1 库函数的使用方式
库函数的调用前提
需在程序头部用#include命令将库函数的头 文件包含到本程序中。 例如: #include <math.h> 或 #include "math.h"
库函数调用的格式 函数名( [实参列表] )
例如:sin(3.1415926) sin(3.0) 或 sin(3) 注意:函数调用时, 实参、函数名前不能 加类型名
A B
14
(三)整型变量的定义
整型变量的定义形式: 整型类型名 变量名1,变量名2,……,变量名n;
如:int a,b,c;
A B
15
五、浮点型数据
类型
单精度 双精度 长 双精度
类型名
float double long double
长度
4字节 8字节 10字节
绝对值范围
3.4*10-38~ 3.4*1038 1.7*10-308~1.7*10308 3.4*10-4932~3.4*104932
表示:123*102 ,2.45*10-2 其中,123、2.45 称为尾数部分,2、-2 称为指数部分。 注意:尾数部分不能空,指数部分必须为整数。 例如:
A B
e+3、2.03e+0.5 都是错误的!
17
(二)浮点型变量的定义
浮点型变量的定义形式: 浮点型类型名 如: float 变量名1,变量名2,……,变量名n; a, b, c;
长度
2字节
表示范围
-215~(215-1) 即-32768~32767 -231~(231-1) 约-2.1*109~2.1*109 约-21亿~21亿 0~(216-1) 即 0~65535
4字节
2字节
A
无符号 0~(232-1) unsigned long int 4字节 约0~4.3*109 长整型 注:1)int取自integer 2)有符号整数在计算机中按定点整数的补码存储。
注意事项: 注意事项: (1) (1) 变量必须先定义后使用,标准C规定定义语句必须 变量必须先定义后使用,标准C规定定义语句必须 放在所有可执行语句之前; 放在所有可执行语句之前; (2) (2) 每个变量必须且只能被指定为一种类型; 每个变量必须且只能被指定为一种类型; (3) (3) 一般习惯上用小写字母表示变量名, 一般习惯上用小写字母表示变量名, 用大写字母 用大写字母 表示符号常量名,以示区别。(仅是习惯不是规定) 表示符号常量名,以示区别。(仅是习惯不是规定) 6 多个变量间 逗号分隔
有效位数 7 16 19
注:浮点型数据在计算机中按规范化 浮点数形式存储,例如:
数 符 尾 数 指数 符号 指 数 16
A B
(一)浮点型常量的表示形式
1、十进制小数形式: 如: 5.123(默认为double型),2.45F(指定为float型) 0.123可表示为.123, 123.0可表示为123. 底数10用e或E表示 2、十进制指数形式:如:123e2,2.45E-2
内存中存储形式
负数的补码 =反码+1 =原码取反+1
内存中存储形式 10
A B
整型数据在内存中的存储形式
----以有符号 2 字节整型为例 32767(215-1)的 16位编码 原码:01111111 11111111 反码:01111111 11111111 补码:01111111 11111111 内存中存储形式 -32767(1-215)的 16位编码 原码:11111111 11111111 反码:10000000 00000000 补码:10000000 00000001 内存中存储形式
13
如:0X42
表示4*16+2=(66)10
0xA2F 表示10*162+2*16+15=(2607)10
整数常量的后缀: (1)整数常量后面加字母 l 或 L ,则指定该整 数为long型 如 -123l ,0x42L (2)整数常量后面加字母 u 或 U,则指定该整 数为unsigned型 如 123u ,0102U
A B
三、C 语言的标识符 [P28]
标识符: 用来标识变量名、符号常量名、函数名、 数组名、类型名的有效字符序列。 标识符命名规则: ① 由字母、数字、下划线组成,且只能以字母或 下划线开头; ② 关键字不能作为标识符;( C语言的关键字共有32 个,见P306附录B) ③ 不同系统对长度有不同的要求, VC要求长度不 超过247个字符。
INT
√ × “.”不能作标识符 √ × “-”不能作标识符 √ × 不能以数字开头 × 关键字不能作标识符 √
8
A B
四、整型数据
类型
(有符号) 短整型 (有符号) 长整型 无符号 短整型
类型名
[signed] short int 简称 short TC的基本整型 int [signed] long int 简称 long VC的基本整型 int unsigned short int
一个或多个输出项组成 ( 多个之间用逗号隔开 ) ,常量、 变量、函数、表达式等均可做输出项。
二、格式控制串 组成:
1.“%”起头的输出项格式控制符(与输出项一一对应) 2.普通字符(原样输出) 3.反斜杠“\”起头的转义字符 25
A B
例:#include <stdio.h> 格式控制符与输出项 int main( ) 一一对应 { int a,b,sum; a=123; b=456; sum=a+b; printf(”a=%d ,b=%d ,c=%d\n”, a, b, sum); return 0; 原样 输出 } 结果: a=123 ,b=456 ,c=579 (换行)
第三章 数据类型、运算符与表达式
3.1 C语言的数据类型 3.2 常量 3.3 简单变量 3.4 库函数 3.5 运算符和表达式
数据类型 数值类型及其输入输出 及其 字符类型及其输入输出 输入输出 字符串及其输入输出
分块讲解
算术运算、赋值运算、强制类型转换、增量运算 关系运算、逻辑运算、条件运算 运算符和 逗号运算 表达式 位运算 求字节数运算 1
A B
空类型void 3
3.2~3.3(1) 常量与简单变量–以数值型为例
• 常量: 在程序运行中,其值不变的量,如: 23.7, - 67 等。 • 变量: 在程序运行过程中,其值可以改变的量, 在内存中占据一定的存储单元。
变量a 150 50
A B
4
一、两类常量
常数常量和符号常量 常数常量 如-10, 3.14 符号常量: 用标识符表示的常量。符号常量用 预处理(宏定义)命令定义在函数之外。 定义形式: A B
内存中存储形式
A B
补码没有-0
补码:10000000 00000000 被定义为-215即-32768
12
(二)整型常量的表示方法
int型常量的表示方法: 十进制: 如: 123 , 0 , -125 八进制: 以数字 0 开头,如:0102
表示1*82+2=(66)10
十六进制: 以 0x 或 0X 开头(0为数字) A B
注意: 语言标识符中大、小字母有区分。 注意:* *C C 语言标识符中大、小字母有区分。 * “ 简单明了 ” 、 “ 见名知意 ” 。 * 命名尽量做到 命名尽量做到 “ 简单明了 ” 、 “ 见名知意 ” 。 7
A B
判断下列用户标识符的合法性:
a1 First.name a_b a-b abc123 3rd_row int