C语言第3章2类型、运算符与表达式
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章 数据类型、运算符和表达式
主要内容
1. 预备知识 2. 常量和变量的概念 3. 各种数据类型的常量及变量 4. 变量赋初值 5. 不同类型数据之间的混合运算 6. 常用运算符和表达式 7. 输入函数与输出函数
2
3.4.1 变量和内存的概念
变量: 程序运行过程中其值可以改变的量。 系统为程序中的每一个变量开辟存储单元。
24
自增( ++ )和自减运算( - - )举例
变量I 变量N
10 N = I ++ 0
1?1 变量I 1?0 变量N
变量I 变量N
10 N = ++ I 0
1?1 变量I 1?1 变量N
25
练习 : 已知 i = 7 j = i ++ ; j = ? 7
i=? 8
j = ++ i; j = ? 8 i = ?
算术运算符的结合性 从左到右
19
(1)求三个数的算术平均值
代数表达式:ave= a b c
3
算 术
算术表达式:ave=(a + b + c)/3 (2)根据三角形三边计算三角形面积
表 代数表达式: s(s a)(s b)(s c)
达 算术表达式:sqrt(s*(s-a)*(s-b)*(s-c)) 式 (3)根据半径计算圆的周长
D. 1
21
算术运算符的优先级
(、)(括号)
最优先! 无括号时我最高!
- (负号运算符) *、 /、 %
第二级!
+ 、-(加减运算符)
最低!
22
自增( ++ )和自减运算( - - )
• ++ 运算符的作用:是使变量的值增 1。
原始值 变量
++
原始值+ 1 变量
• -- 运算符的作用:是使变量的值减1。
8
26
练习
变量名: 字母开头,后跟字母、数字和下划线组成。 C语言中的关键字不能作为变量名。
3
3.4.1 变量和内存的概念
#include<stdio.h> #define PI 3.1415926 void main( ) { float r, s, ar;
scanf(“%f”, &r); s = 2 * PI * r; ar = PI * r * r; printf("s=%7.2f, " , s ); printf(" ar=%7.2f “ , ar ) ; }
分量运算符: . ->
下标运算符: [ ]
其它 : ( ) -
13
学习运算符应注意:
运算符功能 与运算量关系
要求运算量个数 要求运算量类型
运算符优先级别 结合方向 结果的类型
14
计算机实现操作有两种方式:
运算:数学中所规定的各种基本运算,由运算符来 实现。
函数:对于复杂的运算,需要编制子函数来实现。 标准函数(库函数); 用户自定义函数;
原始值 变量
--
原始值- 1
变量
23
自增( ++ )和自减运算( -- )
自增和自减运算只能应用于整型变量和指针型变 量。 ++ 和 -- 可以写在变量的左侧或右侧;而且其 意义不同。 • “ ++ 变量名”和“ -- 变量名”:
先做运算,后取值 • “变量名 ++ ”和“变量名 -- ”:
先取值,后做运算
代数表达式: s=2πr
算术表达式:s=2*3.14159*r
20
练习:
1.下列运算符的操作数不能是float型的运算符是()。
A. * B. % C. ―― D. /
答案: B
2.执行以下程序段,c的值是( )。 int a=1,b=2,c;
答案: A
c=a/b;
A. 0 B. 1/2 C. 0.5
15
运算符与表达式
1. 算术运算符和算术表达式 2. 赋值运算符和赋值表达式
16
算术运算符
完成现实世界的算术运算( + 、-、×、÷)
+
加法运算或正号运算符
-Байду номын сангаас
减法运算或负号运算符
*
乘法运算符
/
除法运算符
%
求余运算符,或称模运算符
17
关于求余运算:
求余运算A % B表示:求A 除以 B 的余数 求余运算要求%两侧都是整型数据。 对于除法,如果参加运算的两个数中有一个数为 实数,则结果是实数 (实数除法)
类型标识符 变量名1[=常量1], 变量名2[=常量2],… ;
5
3.4.2 变量定义和赋初值
变量赋初值
int i = 0 ;
/*指定i为整型变量,初值为0*/
int a = 5 , b = 5 , c = 5; /*指定a,b,c的初值为5*/
float ep = 0.001; /*指定ep的初值为0.001*/
例: 8%5 的运算结果:3 8/5 的运算结果:1 5.6/2 :2.800000 8.43/5:1.686000
18
算术表达式:
算术表达式:用算术运算符和括号将运算对象连接起 来的式子称为算术表达式。 运算符有优先级和结合性: • 计算表达式的值时,按照优先级的高低依次计算; • 如果运算符优先级相同,则按规定的结合方向进行。
说明:
变量必须先定义后使用;
变量中存储的只能是一个 数据,往变量中存放数据 的操作称为赋值。
变量改变的是其值,而不 是变量名。
4
3.4.2 变量赋初值
变量定义 int a , b , c ; /*指定a,b,c为整型变量*/ float w ; /*指定w为单精度实型变量*/ double z; /*指定z为双精度实型变量*/ char c1 , c2; /*指定c1,c2为字符型变量*/
char c = 'a' ; /*指定c的初值为’a’*/
6
注意: 变量的“名”和变量的“值”不同,变量的“
名”是该变量所代表的存储单元的标志,而变量的 “值”是指存储单元中的内容。
如:int a;
?
a=5;
5
a=10;
10
7
8
9
10
11
主要内容
1. 预备知识 2. 常量和变量的概念 3. 各种数据类型的常量及变量 4. 变量赋初值 5. 不同类型数据之间的混合运算 6. 常用运算符和表达式 7. 输入函数与输出函数
12
3.6 运算符和表达式
算术运算符:+ - * / % ++ --
关系运算符:< <= == > >= !=
逻辑运算符:(! && ||
位运算符 : << >> ~ | ^ &
C
赋值运算符: = 及其扩展
运
条件运算符: ? :
算
逗号运算符: ,
符
指针运算符: * &
求字节数 :sizeof
强制类型转换:(类型)
主要内容
1. 预备知识 2. 常量和变量的概念 3. 各种数据类型的常量及变量 4. 变量赋初值 5. 不同类型数据之间的混合运算 6. 常用运算符和表达式 7. 输入函数与输出函数
2
3.4.1 变量和内存的概念
变量: 程序运行过程中其值可以改变的量。 系统为程序中的每一个变量开辟存储单元。
24
自增( ++ )和自减运算( - - )举例
变量I 变量N
10 N = I ++ 0
1?1 变量I 1?0 变量N
变量I 变量N
10 N = ++ I 0
1?1 变量I 1?1 变量N
25
练习 : 已知 i = 7 j = i ++ ; j = ? 7
i=? 8
j = ++ i; j = ? 8 i = ?
算术运算符的结合性 从左到右
19
(1)求三个数的算术平均值
代数表达式:ave= a b c
3
算 术
算术表达式:ave=(a + b + c)/3 (2)根据三角形三边计算三角形面积
表 代数表达式: s(s a)(s b)(s c)
达 算术表达式:sqrt(s*(s-a)*(s-b)*(s-c)) 式 (3)根据半径计算圆的周长
D. 1
21
算术运算符的优先级
(、)(括号)
最优先! 无括号时我最高!
- (负号运算符) *、 /、 %
第二级!
+ 、-(加减运算符)
最低!
22
自增( ++ )和自减运算( - - )
• ++ 运算符的作用:是使变量的值增 1。
原始值 变量
++
原始值+ 1 变量
• -- 运算符的作用:是使变量的值减1。
8
26
练习
变量名: 字母开头,后跟字母、数字和下划线组成。 C语言中的关键字不能作为变量名。
3
3.4.1 变量和内存的概念
#include<stdio.h> #define PI 3.1415926 void main( ) { float r, s, ar;
scanf(“%f”, &r); s = 2 * PI * r; ar = PI * r * r; printf("s=%7.2f, " , s ); printf(" ar=%7.2f “ , ar ) ; }
分量运算符: . ->
下标运算符: [ ]
其它 : ( ) -
13
学习运算符应注意:
运算符功能 与运算量关系
要求运算量个数 要求运算量类型
运算符优先级别 结合方向 结果的类型
14
计算机实现操作有两种方式:
运算:数学中所规定的各种基本运算,由运算符来 实现。
函数:对于复杂的运算,需要编制子函数来实现。 标准函数(库函数); 用户自定义函数;
原始值 变量
--
原始值- 1
变量
23
自增( ++ )和自减运算( -- )
自增和自减运算只能应用于整型变量和指针型变 量。 ++ 和 -- 可以写在变量的左侧或右侧;而且其 意义不同。 • “ ++ 变量名”和“ -- 变量名”:
先做运算,后取值 • “变量名 ++ ”和“变量名 -- ”:
先取值,后做运算
代数表达式: s=2πr
算术表达式:s=2*3.14159*r
20
练习:
1.下列运算符的操作数不能是float型的运算符是()。
A. * B. % C. ―― D. /
答案: B
2.执行以下程序段,c的值是( )。 int a=1,b=2,c;
答案: A
c=a/b;
A. 0 B. 1/2 C. 0.5
15
运算符与表达式
1. 算术运算符和算术表达式 2. 赋值运算符和赋值表达式
16
算术运算符
完成现实世界的算术运算( + 、-、×、÷)
+
加法运算或正号运算符
-Байду номын сангаас
减法运算或负号运算符
*
乘法运算符
/
除法运算符
%
求余运算符,或称模运算符
17
关于求余运算:
求余运算A % B表示:求A 除以 B 的余数 求余运算要求%两侧都是整型数据。 对于除法,如果参加运算的两个数中有一个数为 实数,则结果是实数 (实数除法)
类型标识符 变量名1[=常量1], 变量名2[=常量2],… ;
5
3.4.2 变量定义和赋初值
变量赋初值
int i = 0 ;
/*指定i为整型变量,初值为0*/
int a = 5 , b = 5 , c = 5; /*指定a,b,c的初值为5*/
float ep = 0.001; /*指定ep的初值为0.001*/
例: 8%5 的运算结果:3 8/5 的运算结果:1 5.6/2 :2.800000 8.43/5:1.686000
18
算术表达式:
算术表达式:用算术运算符和括号将运算对象连接起 来的式子称为算术表达式。 运算符有优先级和结合性: • 计算表达式的值时,按照优先级的高低依次计算; • 如果运算符优先级相同,则按规定的结合方向进行。
说明:
变量必须先定义后使用;
变量中存储的只能是一个 数据,往变量中存放数据 的操作称为赋值。
变量改变的是其值,而不 是变量名。
4
3.4.2 变量赋初值
变量定义 int a , b , c ; /*指定a,b,c为整型变量*/ float w ; /*指定w为单精度实型变量*/ double z; /*指定z为双精度实型变量*/ char c1 , c2; /*指定c1,c2为字符型变量*/
char c = 'a' ; /*指定c的初值为’a’*/
6
注意: 变量的“名”和变量的“值”不同,变量的“
名”是该变量所代表的存储单元的标志,而变量的 “值”是指存储单元中的内容。
如:int a;
?
a=5;
5
a=10;
10
7
8
9
10
11
主要内容
1. 预备知识 2. 常量和变量的概念 3. 各种数据类型的常量及变量 4. 变量赋初值 5. 不同类型数据之间的混合运算 6. 常用运算符和表达式 7. 输入函数与输出函数
12
3.6 运算符和表达式
算术运算符:+ - * / % ++ --
关系运算符:< <= == > >= !=
逻辑运算符:(! && ||
位运算符 : << >> ~ | ^ &
C
赋值运算符: = 及其扩展
运
条件运算符: ? :
算
逗号运算符: ,
符
指针运算符: * &
求字节数 :sizeof
强制类型转换:(类型)