slide1
Download
Skip this Video
Download Presentation
第二章 基本数据类型与表达式

Loading in 2 Seconds...

play fullscreen
1 / 24

第二章 基本数据类型与表达式 - PowerPoint PPT Presentation


  • 70 Views
  • Uploaded on

第二章 基本数据类型与表达式. 教学目的: 本章主要介绍各种数值类型,数据类型和数值表达式,逻辑型数据类型,和逻辑表达式以及表达式的副作用和表达式语句。 教学要求: 1. 掌握各种数据类型的基本情况和常量表示方法,掌握变量的定义方法,能够根据要解决问题的实际情况选用适当的数据类型。 2. 熟练掌握数值表达式的构造方法,能够用表达式完成程序中的数值计算。. 3. 熟练掌握逻辑表达式的构造方法,能够用逻辑表达式表达各种条件。 4. 了解表达式的副作用,能够在程序中恰当运用。 教学重点:数据类型及应用 教学难点:表达式及副作用. 长度 2 2 4 4 4 4.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '第二章 基本数据类型与表达式' - annona


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1
第二章基本数据类型与表达式
  • 教学目的:
    • 本章主要介绍各种数值类型,数据类型和数值表达式,逻辑型数据类型,和逻辑表达式以及表达式的副作用和表达式语句。
  • 教学要求:
    • 1.掌握各种数据类型的基本情况和常量表示方法,掌握变量的定义方法,能够根据要解决问题的实际情况选用适当的数据类型。
    • 2.熟练掌握数值表达式的构造方法,能够用表达式完成程序中的数值计算。
slide2
3.熟练掌握逻辑表达式的构造方法,能够用逻辑表达式表达各种条件。
    • 4.了解表达式的副作用,能够在程序中恰当运用。
  • 教学重点:数据类型及应用
  • 教学难点:表达式及副作用
slide3
长度

2

2

4

4

4

4

值域范围

-215215-1内的整数

0216-1内的整数

-231231-1内的整数

0232-1内的整数

-231231-1内的整数

0232-1内的整数

关键字

short, short int, signed short int

Unsigned short, unsigned short int

int, signed int

Unsigned, unsigned int

long, long int, signed long int

Unsigned long, unsigned long int

  • 类型
  • 有符号短整数
  • 无符号短整数
  • 有符号整数
  • 无符号整数
  • 有符号长整数
  • 无符号长整数
slide4
整形数据
  • 常量表示
    • ①短整型 →整型
    • ②长整型 L
    • ③整型:十进制数:12; 八进制 012 =10 十六进制: 0X12=18,0x12=18
    • 无符号数:U
  • 变量:
    • 定义及初始化:
    • 类型修饰符 变量名[=表达式],『,变量名[=表达式]』;
    • int a=99L (与定义一致)
slide5
字符型数据
  • 类型:char, unsigned char (1字节)
  • 常量:
    • ①直接用引号引起来:eg: ’U’ ”abcdef”
    • ②转义字符
    • ③代码所代表字符:八进制数;十六进制数
    • ④引号及反斜杠表示法:’\’’ ’\”’ ’\\’
    • ⑤字符串表示法
      • 长度+1=占字节空间
      • 转义字符只算一个字节
      • 路径的表示法
slide6
字符型数据
  • 变量char ch1=’I’;
  • 与整型关系:ASCII码表 char ch2=65;
  • 表达式求值时自动变为整型
  • char a=’A’,b=66;
  • cout<
  • cout<
  • P20 例子
slide7
枚举型数据 (值域是有限)
  • 1.自定义类型
  • 格式: enum 枚举名{符号表};
  • 枚举名:类型修饰符
  • eg:enum Weekday {Sun,Mon,Tue,Wed,Thu,Fri,Sat}
  • 2.与整型的关系:
  • 依次对应0,1,2,3,…
  • 表达式求值, 枚举 整型
  • C++输入整型 枚举型, 输出:枚举 整型
slide8
实型数据
  • 类型:
    • 单精度float,双精度double,长双精度long double
  • 常量:单精度f,长双精度L
  • 变量:
slide9
符号常量与常值变量
  • 符号常量:#define p1 3.1416
  • 常值变量:
    • 在变量定义前加const,定义时必须初始化,属性明确。
slide10
数值表达式
  • 简单:常量,变量,函数调用
  • 算术操作符:
    • + - * / % + - eg:10/3=3
  • 位操作符:
    • << (相当于*2) >>(相当于整除2) | & ^ ~
  • 赋值操作符= : 执行顺序从右向左
  • 复合赋值
    • += -= *= /= %= <<= >>= |= &= ^=
    • 变量?=表达式 <=> 变量=变量?表达式
1 1 i i i i
增1,减1操作: ++i, i++, --i, i—
  • 区别
    • 前增/减1:先加/减1再操作
    • 后增/减1:先操作再加/减1
  • 执行顺序:从右到左
  • Eg: int k,d=5;

k=++d*2

k= d= .

int k,d=5;

k=d++*2

k= d= .

12

6

10

6

注意:表达式中,连续出现+,-被识别为++,--,应避

免++(或者--)所作用的变量在同一表达式中重复出现。

sizeof
sizeof操作符
  • sizeof(类型修饰符)或sizeof(表达式)
  • 功能:
    • 获得一数据或数据类型所占空间的字节数
slide13
书写表达式注意
  • 1.字符书写在同一水平线上。
  • 2.算术运算符与数学中的运算符写法有区别。
  • 3.用函数实现:乘方,开方,对数,正弦…… [math.h]
  • 4.括号( )无大中小之分。
slide14
类型的自动转化与强制转化
  • 自动转化
    • 规律:短 长, 有符号 无符号, 整型 实型, 低精度 高精度
  • 强制转化
    • 格式: (类型修饰符)表达式
    • 类型修饰符 (表达式)
    • Eg: double (10/3)
slide15
逻辑型
  • 修饰符:bool
  • 值域(两个): true false
  • 逻辑型表达式
    • 无操作符的逻辑表达式
      • 逻辑常量:true false
      • 逻辑变量:eg: bool a=true;
      • 逻辑函数调用
    • 关系符表达式
    • 逻辑符表达式
  • 逻辑型与其它数据类型的关系:
    • 非0即true ,0即false
slide16
关系符表达式
  • 操作符:
    • == != > < >= <=
    • 互为相反条件:3对
  • 结果为逻辑型
  • 优先级高于赋值,低于算术
slide17
逻辑符表达式
  • 操作符:
    • && (与) ||(或) !(非)
  • 左右为逻辑型,结果为逻辑型
  • 优先级:!>&&>||
slide18
条件
  • 复合条件:用&&和||构成的条件
  • 永真与永假条件
  • 等价条件:
    • !!E
    • !(X==Y)
    • !(X>Y)
    • !(X
    • !(E1&&E2)
    • !(E1||E2)
    • E1&&E2
    • E1||E2

E

X!=Y

相反条件

X<=Y

X>=Y

!E1||!E2

摩根定律

!E1&&!E2

E2&&E1

结合律

E2||E1

slide19
条件表达式
  • 格式:
    • 条件?表达式1:表达式2
  • 功能:
    • 若条件为true时表示条件成立,它的值即为表达式1的值;若条件为false时表示条件不成立,它的值即为表达式2的值。
  • 说明:
    • 条件为的值为逻辑值
    • 表达式1/2应为同一数据类型
    • 条件表达式可以嵌套
  • 例子:
    • X.>0?1: (X<0?-1:0)
slide20
自定义类型修饰符
  • 格式:
    • typeddf 类型修饰符说明;
  • 例如:
    • typedef int DISTANCE
  • 说明:
    • 去掉保留字typedef,与定义一个变量的格式完全相同。
slide21
表达式的副作用
  • 副作用
    • 表达式除了产生一个计算结果,还使参与计算的变量值改变
  • 产生副作用原因:
    • 引入副作用操作符(赋值/复合赋值;增1/减1——作用于变量的操作)
  • 避免表达式错误,应注意两点 P44
  • 副作用的应用
    • 逗号表达式
    • 表达式语句
      • 没有副作用的表达式作为语句使用是毫无意义的
slide22
本章小结
  • 1.        整形和实型(浮点型)是C++中用来表示数值的最主要的数据类型。C++中的整形数据或实型数据的值域及精度都是有限的,不同与数学中的整数或实数。为了满足程序中的不同需要,C++提供了不同规格的整形(short, int, long等)和不同规格的实型(fioat, double, 和long double),程序设计者可根据程序中对数据在值域,精度等方面的需要,选择适当的数据类型。
  • 2.           字符型是表示字符和字符串的数据类型。C++的字符常量用单引号,字符串常量用双引号。C++字符串以ˊ|0ˊ为结束标记,ˊ|0ˊ成为字符串结束符。字符型与整形有着密切的关系:一个字符实际上就是一个作为该字符代码的整数,因此可施加于整数的操作也同样可以施加于字符。由于这一原因,可以用字符表示小整数。
slide23
本章小结
  • 3.           枚举型是一种需要由程序设计者定义的数据类型。定义一个枚举型就是规定一组符号,用来表示程序中需要加以区分的不同事物。枚举型 与整型有着密切的关系:枚举型中的每一个符号惟一的对应一个整数,因此就是表示整数的符号常量。在定义枚举型时可以控制枚举符号与整数的对应关系。在程序中,枚举符号可以象整数那样加以利用。
  • 4.           逻辑型的类型修饰符是bool,因此也成为布尔型,是用来表达条件的数据类型。逻辑型数据的值只有true(逻辑真,表达条件成立)或false(逻辑假,表达条件不成立)两种可能。逻辑型与整型有着密切的关系:当逻辑型数据作为 数值使用时,true就是1,false就是0;而其他类型的数据作为逻辑数据使用时,一切0值转换为false,一切非0值转换为true。
slide24
本章小结
  • 5.           数值表达式的主要作用是完成数值计算。常量、变量和函数调用是三种最简单的表达式。通过操作符的连接,可以构造出任意复杂的表达式。当一个表达式中有许多操作符时,操作符的优先级和结合性决定了它们执行的程序。括弧()可以用来控制操作符的执行顺序,()具有最高的优先级。
  • 6.           赋值(=)、符合赋值(+=等)以及增1减1(++,--)等是具有副作用的操作符,它们只能作用于变量。并要改变变量的值。对于这些作用于变量的操作符,除后增1和后减1外,其操作结果就是那个被作用的变量(被改变了值的变量),因此可以 继续作为“作用于变量的操作符”的作用对象。
ad