第02章数据类型及其运算精品PPT课件
合集下载
C语言教程课件第二章 数据类型、运算符和表达式
例 整型变量的定义与使用
#include <stdio.h> void main() { int a,b,c,d; /*指定a、b、c、d为整型变量*/ unsigned u; /*指定u为无符号整型变量*/ a=12;b=-24;u=10; c=a+u;d=b+u; printf("a+u=%d,b+u=%d\n",c,d); }
例 向字符变量赋以整数。 • 运行结果: #include <stdio.h> a b void main() 97 98 { char c1,c2; c1=97; c2=98; printf("%c %c\n",c1,c2); printf("%d %d\n",c1,c2); }
• 说明:在第4和第5行中,将整数97和98分别赋给c1和c2,它 的作用相当于以下两个赋值语句: c1='a';c2='b'; 因为'a'和'b'的ASCII码为97和98
• 字符型变量用来存放字符常量,注意只能放一个字符。 • 字符变量的定义形式如下:char c1,c2; • 在本函数中可以用下面语句对c1,c2赋值: c1='a';c2='b'; • 一个字符变量在内存中占一个字节; • 将一个字符常量放到一个字符变量中,是将该字符的 相应的ASCII代码放到存储单元中,这样使字符型数据 和整型数据之间可以通用。一个字符数据既可以以字 符形式输出,也可以以整数形式输出。
运行结果: total=300 例2.1 符号常量的使用 #define PRICE 30 #include <stdio.h> void main ( ) 说明:如再用赋值语句给PRICE赋值是错的 { PRICE=40;/*错误,不能给符号常量赋值*/ int num, total; num=10; total=num * PRICE; printf(″total=%d\n ″,total); } 说明: 程序中用#define命令行定义PRICE代表常量30,此后凡在 本文件中出现的PRICE都代表30,可以和常量一样进行运算
第2章-数据类型与运算符PPT精品文档72页
数据 5 和 3.14 与 r 、area 不同,它们是在 编写程序时就给出确定的值,在运算过程 中不会改变。这样的数计算机怎么处理?
对整数 5 和小数3.14 ,计算机存放时是否 有区别?
2020/4/26
2.1 C程序的符号系统
4
C程序中可以出现的字符包括:
–基本字符 –标识符
2020/4/26
Abc m+y int π
define a# let wtm
2x b-4 x%y Ctrl
double _1 name swicth
student While do include
2020/4/26
正确区分标识符
11
正确区分哪些是合法标识符,哪些是不合 法标识符。
Abc define 2x double student
2020/4/26
原码、反码和补码
16
正数:原码、反码、补码相同
– 符号位为0,数值为对应的二进制数。 +109
[01101101]原 = [01101101]反 = [01101101]补
负数:
– 原码符号位为1,数值为绝对值的二进制
数。
-109 [11101101]原
– 反码符号位为1,数值为绝对值的二进制
2020/4/26
问题:计算机计算复杂化
15
例如计算: (-19)+(+22) 1001 0011 + 0001 0110
需要判断符号是否相同:
• 如果相同,结果符号不变,并进行绝对值相加 • 如果不同,结果取绝对值大的数的符号,并进
行绝对值相减
解决的方法是: 使用反码或补码的表示方法(按前述
表示的编码称为原码),即能将减法一律 转换为加法。
第二章 基本数据类型和运算符PPT课件
04.08.2020
C语言程序设计第二版
5
二、词法约定 C语言中共有六类单词:标识符、关键字、常量、
注释符、运算符和标点符。 ① 注释符 以“/*”开头、“*/”结束;或者用“//”注释当前
行 ② 标识符
用于标识变量名、符号常量名、数组名、函 数名、 类型名、文件名的有效字符序列。
04.08.2020
无符号长整型
无符号整型 无符号短整型
单精度浮点型(float)
基本数据类型
浮点型 双精度浮点型(double) 长双精度浮点型
字符型 (char)
无符号字符型 有符号字符型
04.08.2020
C语言程序设计第二版
12
微型计算机内存的一个存储单元长度(即 所包含的二进制位数)是8个bits,称为一 个字节(byte),即通常所说的一个byte等 于8个bits。各种数据类型的长度通常都是 采用所占用的内存空间字节数(也就是内 存空间的存储单元个数)来表示。
14
2.2.1常量
1、常量的定义:在程序运行过程中,其值保持不变的量 常量的类型:根据字面形式可将常量区分为不同的类
型。 2、整型常量: C语言表示整型常量的方法有以下三种:
十进制整数:不带任何修饰。如123、-456、0等; 八进制整数:以数字0开头。如0123、-011等; 十六进制整数:以数字0x开头。如0x123、0x2ef;
04.08.2020
C语言程序设计第二版
4
图形符号:29个图形(可见)符号, 即
! “ # % & ‘ ( )* +,-./;:<= > ?[\] ^ { | }~ 主要用作各种运算符。
转义字符:程序中有时需要用到某些不可见 或难以打印的字符,C语言中采用转义字符 来表示,如: “\n”表示一个换行符;字符’\’被称为转移 符,表示其后的字符n具有特定的含义。
C语言第02章 数据类型、运算符与表达式ppt课件
1、整型、实型、字符型数据之间可以混合运 算
整型〔包括int,short,long〕和实型〔包括float,double〕数 据可以混合运算,另外字符型数据和整型数据可以通用,因此, 整型、实型、字符型数据之间可以混合运算。
例如,表达式10+'a'+1.5-8765.1234*'b'是合法的。
回到
回到
2.2常量与变量
首页
2.2、变量的定义 〔1〕变量是先定义,后使用。
定义一个变量需要提供两方面的信息:变量的名字和 类型
〔2〕定义格式 类型说明符 变量1, 变量2,…;
如 int number;
回到
2.3整 型 数 据
首页
1、整型常量的表示方法 〔1〕 十进制整常数。没有前缀 〔2〕 八进制整常数。以0作为前缀。 〔3〕 十六进制整常数。十六进制整常数的前 缀为0X或0x。
实型变量提供的有效数字是有限的
一个很大的数+一个很小的数,没有意义
回到
2.4实 型 数
首页
2、实型变量
【例2.8】 显示个人微机上不同类型变量所占的字节数
回到
2.5字符型数据
首页
1、字符常量 〔1〕定义 字符常量是用单引号〔' '〕括起来的一个字符。 例如,'a'、'='、'?'都是合法的字符常量。 〔2〕字符常量特点
回到
作业和实验习题
首页
作业:P41 2.3 2.4 2.7 2.9 2.11〔做在书 上〕 2.12
实验:
P20 例2.2 2.3
P23 例2.4
P24 例2.5
P27 例2.7
整型〔包括int,short,long〕和实型〔包括float,double〕数 据可以混合运算,另外字符型数据和整型数据可以通用,因此, 整型、实型、字符型数据之间可以混合运算。
例如,表达式10+'a'+1.5-8765.1234*'b'是合法的。
回到
回到
2.2常量与变量
首页
2.2、变量的定义 〔1〕变量是先定义,后使用。
定义一个变量需要提供两方面的信息:变量的名字和 类型
〔2〕定义格式 类型说明符 变量1, 变量2,…;
如 int number;
回到
2.3整 型 数 据
首页
1、整型常量的表示方法 〔1〕 十进制整常数。没有前缀 〔2〕 八进制整常数。以0作为前缀。 〔3〕 十六进制整常数。十六进制整常数的前 缀为0X或0x。
实型变量提供的有效数字是有限的
一个很大的数+一个很小的数,没有意义
回到
2.4实 型 数
首页
2、实型变量
【例2.8】 显示个人微机上不同类型变量所占的字节数
回到
2.5字符型数据
首页
1、字符常量 〔1〕定义 字符常量是用单引号〔' '〕括起来的一个字符。 例如,'a'、'='、'?'都是合法的字符常量。 〔2〕字符常量特点
回到
作业和实验习题
首页
作业:P41 2.3 2.4 2.7 2.9 2.11〔做在书 上〕 2.12
实验:
P20 例2.2 2.3
P23 例2.4
P24 例2.5
P27 例2.7
第二章 基本数据类型及其运算.ppt
t
u vw
120 x
y
z
{
|
}
~ \177
安徽大学计算机教学部
8
计
算
机
程
序
转义序列
设
\a
计
\b
基 础
\f
\n
\r
\t
\v
\0
\\
\‘
\“
\ddd
安徽大学计算机教学部
转义序列及其意义
功能与意义 响铃 退格 换页 换行 返回到当前行首 水平制表键 垂直制表键 ASCII码0 字符‘\’自身 字符‘’’(仅在字符常数中需要‘\’) 字符‘“’(仅在字符串常数中需要‘\’) “ddd”表示八进制的该字符ASCII码值
基
础 • 赋值语句与赋值表达式
• 算术运算符与算术表达式
• 关系运算符与关系表达式
• 逻辑运算符与逻辑表达式
• 位运算符
• 其他运算符与表达式
安徽大学计算机教学部
19
计 算
运算符与表达式概述
机
程 序
• 表达式
设 计 基
– 由操作符与操作数组成的序列,完成一系列的运 算,得到最终的计算结果
础 – 表达式结果的数据类型由参与运算的操作数确定
位数 有效位 最小值
32 7
–3.40e38
64 15
–1.80e308
最大负值 –1.18e–38 –2.23e–308
最小正值 1.18e–38 2.23e–308
最大值 3.40e38 1.80e308
long double 80 19
–1.19e4932 –3.36e–4932 3.36e–4932 1.19e4932
C语言数据类型 ppt课件
2021/3/26
C语言数据类型 ppt课件
24
2.2 常量与变量
2.实型变量
(1)实型变量的分类
• 单精度实型:类型说明符为float,在内存中 占4个字节,提供7位有效数字。
• 双精度实型:类型说明符为double,在内存 中占8个字节,提供1 5 ~ 1 6位有效数字。
例 float a; a=111111.111; double b; b=111111.111;
2021/3/26
C语言数据类型 ppt课件
14
2.2 常量与变量
5.字符串常量 定义:用双引号(“”)括起来的字符序列 存储:每个字符串尾自动加一个 ‘\0’ 作为
字符串结束标志
例 字符串“hello”在内存中 h e l l o \0
例 空串 “” \0
• 字符常量与字符串常量不同
例 ‘a’ a
输出结果:x+y=30
2021/3/26
C语言数据类型 ppt课件
22
2.2 常量与变量
(3)整型数据在内存中的存放形式
int x; x=10; 则变量x的值10在内存中的存放形式:
int x;
x=-10; 则变量x的值10在内存中的存放形式:
2021/3/26
C语言数据类型 ppt课件
23
2.2 常量与变量
短整型 short
整型
整型 int
长整型 long
C
基本类型
数
据
类
型
聚合类型
单精度型 float
实型 字符类型
双精度型 double char
空类型 void 数组 数据类型决定: 结构体 1.s数tru据ct占内存字节数 共用体 2.u数ni据on取值范围 枚举类型3. e其nu上m可进行的操作 指针类型
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
int i; int j=5,k=4;
作用域分,变量大致可分为:局部变量、 类成员变量、方法参数、异常处理参数。
变量作用域
局部变量是在方法内部或代码块中声明的变量, 它的作用域为它所在的代码块,在程序设计中, 以“{ …… }”为界。
类成员变量,它的作用域是整个类。又可以细 分为静态变量和实例变量
整数类型
Java中的整数有三种进制形式表示:
十进制:用0~9的数值表示,首位不能为0,例如: 124,-100;
八进制:以0开头,后跟多个0~7之间的数字,如 0134;
十六进制:以0x或者0X开头,后跟多个0~9之间 的数字、或A~F之间的的大写字、或者a~f之间的 小写字母。a~f或者A-F分别表示10~15,例如, 0x23FE,等于十进制数9214。
合法的标识符:
Body,_test,$hello
非法标识符:
5Test,hello*,world#,class
注意:在中文环境下,可以使用汉字作为标识符。例 如,int 中文=5;
练习题
Which declarations of identifiers are legal?
A. $persons B. TwoUsers C. *point D. this E. _endline
整数类型
数据类型 所占位数
byte 8 short 16
int
32
long 64
数的范围
-27 ~(27 -1) -215 ~(215 -1) -231 ~(231 -1) -263 ~(263-1)
在表示long型常量时,需要在数字后面加上 后缀L或者l。例如3L表示一个long型的如果被大写,就不是关 键字了 。
用于数据类型的关键字
byte short int long float double char boolean
用于流程控制语句的关键字
if else switch case default do while for break continue goto
方法参数的作用域,是它所在的方法 异常处理参数的作用域,是它所在的异常处理
部分 变量隐藏 (同名变量按“邻近”原则)
常量
整形常量234,实型常量23.4,字符常 量’a’,布尔常量true和false,以及字符 串常量”hello world!”
final关键字(后面还会碰到) final int MAX=100; final int MAX_LOOP=5;
主要内容
2.1标识符和关键字 2.2常量和变量 2.3基本数据类型 2.4运算符 2.5表达式 2.6数组
数据类型分类
基本类型
整数类型(byte,short,int,long)
数值类型
浮点类型(float,double)
字符类型(char)
数据类型
布尔类型(boolean)
类(class)
引用类型
接口(interface)
数组 图 2-1 Java语言的数据类型
数据类型
Java的基本数据类型都有固定的数据位, 不随运行平台的变化而变化。
引用类型都是用类或对象实现的。 布尔类型
boolean b=false;
字符类型
一个字符用一个
16位的Unicode 码表示
转义字符
描述
\ddd 1到3位8进制数所表示的字符(ddd)
方法、类型、变量的修饰关键字
private public protected final static abstract synchronized volatile
异常处理关键字
try catch finally throw throws
关键字
对象相关关键字
new extends implements class instanceof this super
字面值常量关键字
false true null
方法相关关键字
return void
包相关关键字
package import
练习题
Which of the following are Java keywords?
1) NULL 2) new 3) instanceOf 4) wend
注释
标识符
总体来说定义标识符可以使用的字符包括:
大小写字母、数字; Unicode字符集中编号大于0xC0的所有字符。 凡是用Character.isJavaIdentifierStart() 返回true,
都可作为首字符,Character. isJavaIdentifierPart() 返回true,都可作为标识符的一部分。
单行注释
单行注释以“//”开头,至该行结尾,其格式如下:
…… //注释文本
多行注释
/* 注释文本
……
*/
文档注释
/**注释文本
*注释文本
*……
*/
主要内容
2.1标识符和关键字 2.2常量和变量 2.3基本数据类型 2.4运算符 2.5表达式 2.6数组
变量
[修饰符] <类型名> <变量名> [=<初 值>][,<变量名>[=<初值>]….];
浮点类型
第2章 数据类型及其运算
主要内容
2.1标识符和关键字 2.2常量和变量 2.3基本数据类型 2.4运算符 2.5表达式 2.6数组
标识符
标识符 :为程序中的各个元素进行命名 . 一般地,在Java 中标识符是以字母、下划线
(_)、美元符号($)等其它货币符号(如£, ¥)开始的一个字符序列,后面可以跟字母、下 划线、美元符号、数字等字符。 Java语言使用Unicode字符集 标识符是大小写敏感的,没有最大长度的限制, 不能和关键字相同
\uxxxx 1到4位16进制数所表示的字符(xxxx)
char c,c1=‘a’; \'
中’的Unicode码
\" \\
是\u4e2d
\r
整数和字符型数据 \n
在一起运算
\f
单引号字符 双引号字符 反斜杠 回车 换行 走纸换页
字符向整数转换
\t
横向跳格
\b
退格
字符类型
int i=5; char one=‘1’; int j=‘a’;//由字符向整数,自动类型转换 char c=(char)(i+one+j);
作用域分,变量大致可分为:局部变量、 类成员变量、方法参数、异常处理参数。
变量作用域
局部变量是在方法内部或代码块中声明的变量, 它的作用域为它所在的代码块,在程序设计中, 以“{ …… }”为界。
类成员变量,它的作用域是整个类。又可以细 分为静态变量和实例变量
整数类型
Java中的整数有三种进制形式表示:
十进制:用0~9的数值表示,首位不能为0,例如: 124,-100;
八进制:以0开头,后跟多个0~7之间的数字,如 0134;
十六进制:以0x或者0X开头,后跟多个0~9之间 的数字、或A~F之间的的大写字、或者a~f之间的 小写字母。a~f或者A-F分别表示10~15,例如, 0x23FE,等于十进制数9214。
合法的标识符:
Body,_test,$hello
非法标识符:
5Test,hello*,world#,class
注意:在中文环境下,可以使用汉字作为标识符。例 如,int 中文=5;
练习题
Which declarations of identifiers are legal?
A. $persons B. TwoUsers C. *point D. this E. _endline
整数类型
数据类型 所占位数
byte 8 short 16
int
32
long 64
数的范围
-27 ~(27 -1) -215 ~(215 -1) -231 ~(231 -1) -263 ~(263-1)
在表示long型常量时,需要在数字后面加上 后缀L或者l。例如3L表示一个long型的如果被大写,就不是关 键字了 。
用于数据类型的关键字
byte short int long float double char boolean
用于流程控制语句的关键字
if else switch case default do while for break continue goto
方法参数的作用域,是它所在的方法 异常处理参数的作用域,是它所在的异常处理
部分 变量隐藏 (同名变量按“邻近”原则)
常量
整形常量234,实型常量23.4,字符常 量’a’,布尔常量true和false,以及字符 串常量”hello world!”
final关键字(后面还会碰到) final int MAX=100; final int MAX_LOOP=5;
主要内容
2.1标识符和关键字 2.2常量和变量 2.3基本数据类型 2.4运算符 2.5表达式 2.6数组
数据类型分类
基本类型
整数类型(byte,short,int,long)
数值类型
浮点类型(float,double)
字符类型(char)
数据类型
布尔类型(boolean)
类(class)
引用类型
接口(interface)
数组 图 2-1 Java语言的数据类型
数据类型
Java的基本数据类型都有固定的数据位, 不随运行平台的变化而变化。
引用类型都是用类或对象实现的。 布尔类型
boolean b=false;
字符类型
一个字符用一个
16位的Unicode 码表示
转义字符
描述
\ddd 1到3位8进制数所表示的字符(ddd)
方法、类型、变量的修饰关键字
private public protected final static abstract synchronized volatile
异常处理关键字
try catch finally throw throws
关键字
对象相关关键字
new extends implements class instanceof this super
字面值常量关键字
false true null
方法相关关键字
return void
包相关关键字
package import
练习题
Which of the following are Java keywords?
1) NULL 2) new 3) instanceOf 4) wend
注释
标识符
总体来说定义标识符可以使用的字符包括:
大小写字母、数字; Unicode字符集中编号大于0xC0的所有字符。 凡是用Character.isJavaIdentifierStart() 返回true,
都可作为首字符,Character. isJavaIdentifierPart() 返回true,都可作为标识符的一部分。
单行注释
单行注释以“//”开头,至该行结尾,其格式如下:
…… //注释文本
多行注释
/* 注释文本
……
*/
文档注释
/**注释文本
*注释文本
*……
*/
主要内容
2.1标识符和关键字 2.2常量和变量 2.3基本数据类型 2.4运算符 2.5表达式 2.6数组
变量
[修饰符] <类型名> <变量名> [=<初 值>][,<变量名>[=<初值>]….];
浮点类型
第2章 数据类型及其运算
主要内容
2.1标识符和关键字 2.2常量和变量 2.3基本数据类型 2.4运算符 2.5表达式 2.6数组
标识符
标识符 :为程序中的各个元素进行命名 . 一般地,在Java 中标识符是以字母、下划线
(_)、美元符号($)等其它货币符号(如£, ¥)开始的一个字符序列,后面可以跟字母、下 划线、美元符号、数字等字符。 Java语言使用Unicode字符集 标识符是大小写敏感的,没有最大长度的限制, 不能和关键字相同
\uxxxx 1到4位16进制数所表示的字符(xxxx)
char c,c1=‘a’; \'
中’的Unicode码
\" \\
是\u4e2d
\r
整数和字符型数据 \n
在一起运算
\f
单引号字符 双引号字符 反斜杠 回车 换行 走纸换页
字符向整数转换
\t
横向跳格
\b
退格
字符类型
int i=5; char one=‘1’; int j=‘a’;//由字符向整数,自动类型转换 char c=(char)(i+one+j);