第二章
This presentation is the property of its rightful owner.
Sponsored Links
1 / 24

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


  • 50 Views
  • Uploaded on
  • Presentation posted in: General

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

Download Presentation

第二章 基本数据类型与表达式

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


3720377

第二章基本数据类型与表达式

  • 教学目的:

    • 本章主要介绍各种数值类型,数据类型和数值表达式,逻辑型数据类型,和逻辑表达式以及表达式的副作用和表达式语句。

  • 教学要求:

    • 1.掌握各种数据类型的基本情况和常量表示方法,掌握变量的定义方法,能够根据要解决问题的实际情况选用适当的数据类型。

    • 2.熟练掌握数值表达式的构造方法,能够用表达式完成程序中的数值计算。


3720377

  • 3.熟练掌握逻辑表达式的构造方法,能够用逻辑表达式表达各种条件。

  • 4.了解表达式的副作用,能够在程序中恰当运用。

  • 教学重点:数据类型及应用

  • 教学难点:表达式及副作用


  • 3720377

    长度

    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

    • 类型

    • 有符号短整数

    • 无符号短整数

    • 有符号整数

    • 无符号整数

    • 有符号长整数

    • 无符号长整数


    3720377

    整形数据

    • 常量表示

      • ①短整型 →整型

      • ②长整型 L

      • ③整型:十进制数:12; 八进制 012 =10 十六进制: 0X12=18,0x12=18

      • 无符号数:U

    • 变量:

      • 定义及初始化:

      • 类型修饰符 变量名[=表达式],『,变量名[=表达式]』;

      • int a=99L (与定义一致)


    3720377

    字符型数据

    • 类型:char, unsigned char (1字节)

    • 常量:

      • ①直接用引号引起来:eg: ’U’ ”abcdef”

      • ②转义字符

      • ③代码所代表字符:八进制数;十六进制数

      • ④引号及反斜杠表示法:’\’’ ’\”’ ’\\’

      • ⑤字符串表示法

        • 长度+1=占字节空间

        • 转义字符只算一个字节

        • 路径的表示法


    3720377

    字符型数据

    • 变量char ch1=’I’;

    • 与整型关系:ASCII码表 char ch2=65;

    • 表达式求值时自动变为整型

    • char a=’A’,b=66;

    • cout<<a<<3+6<<”3+6”;

    • cout<<b+3;

    • P20 例子


    3720377

    枚举型数据 (值域是有限)

    • 1.自定义类型

    • 格式: enum 枚举名{符号表};

    • 枚举名:类型修饰符

    • eg:enum Weekday {Sun,Mon,Tue,Wed,Thu,Fri,Sat}

    • 2.与整型的关系:

    • 依次对应0,1,2,3,…

    • 表达式求值, 枚举 整型

    • C++输入整型 枚举型, 输出:枚举 整型


    3720377

    实型数据

    • 类型:

      • 单精度float,双精度double,长双精度long double

    • 常量:单精度f,长双精度L

    • 变量:


    3720377

    符号常量与常值变量

    • 符号常量:#define p1 3.1416

    • 常值变量:

      • 在变量定义前加const,定义时必须初始化,属性明确。


    3720377

    数值表达式

    • 简单:常量,变量,函数调用

    • 算术操作符:

      • + - * / % + - 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(表达式)

    • 功能:

      • 获得一数据或数据类型所占空间的字节数


    3720377

    书写表达式注意

    • 1.字符书写在同一水平线上。

    • 2.算术运算符与数学中的运算符写法有区别。

    • 3.用函数实现:乘方,开方,对数,正弦…… [math.h]

    • 4.括号( )无大中小之分。


    3720377

    类型的自动转化与强制转化

    • 自动转化

      • 规律:短 长, 有符号 无符号, 整型 实型, 低精度 高精度

    • 强制转化

      • 格式: (类型修饰符)表达式

      • 类型修饰符 (表达式)

      • Eg: double (10/3)


    3720377

    逻辑型

    • 修饰符:bool

    • 值域(两个): true false

    • 逻辑型表达式

      • 无操作符的逻辑表达式

        • 逻辑常量:true false

        • 逻辑变量:eg: bool a=true;

        • 逻辑函数调用

      • 关系符表达式

      • 逻辑符表达式

    • 逻辑型与其它数据类型的关系:

      • 非0即true ,0即false


    3720377

    关系符表达式

    • 操作符:

      • == != > < >= <=

      • 互为相反条件:3对

    • 结果为逻辑型

    • 优先级高于赋值,低于算术


    3720377

    逻辑符表达式

    • 操作符:

      • && (与) ||(或) !(非)

    • 左右为逻辑型,结果为逻辑型

    • 优先级:!>&&>||


    3720377

    条件

    • 复合条件:用&&和||构成的条件

    • 永真与永假条件

    • 等价条件:

      • !!E

      • !(X==Y)

      • !(X>Y)

      • !(X<Y)

      • !(E1&&E2)

      • !(E1||E2)

      • E1&&E2

      • E1||E2

    E

    X!=Y

    相反条件

    X<=Y

    X>=Y

    !E1||!E2

    摩根定律

    !E1&&!E2

    E2&&E1

    结合律

    E2||E1


    3720377

    条件表达式

    • 格式:

      • 条件?表达式1:表达式2

    • 功能:

      • 若条件为true时表示条件成立,它的值即为表达式1的值;若条件为false时表示条件不成立,它的值即为表达式2的值。

    • 说明:

      • 条件为的值为逻辑值

      • 表达式1/2应为同一数据类型

      • 条件表达式可以嵌套

    • 例子:

      • X.>0?1: (X<0?-1:0)


    3720377

    自定义类型修饰符

    • 格式:

      • typeddf 类型修饰符说明;

    • 例如:

      • typedef int DISTANCE

    • 说明:

      • 去掉保留字typedef,与定义一个变量的格式完全相同。


    3720377

    表达式的副作用

    • 副作用

      • 表达式除了产生一个计算结果,还使参与计算的变量值改变

    • 产生副作用原因:

      • 引入副作用操作符(赋值/复合赋值;增1/减1——作用于变量的操作)

    • 避免表达式错误,应注意两点 P44

    • 副作用的应用

      • 逗号表达式

      • 表达式语句

        • 没有副作用的表达式作为语句使用是毫无意义的


    3720377

    本章小结

    • 1.        整形和实型(浮点型)是C++中用来表示数值的最主要的数据类型。C++中的整形数据或实型数据的值域及精度都是有限的,不同与数学中的整数或实数。为了满足程序中的不同需要,C++提供了不同规格的整形(short, int, long等)和不同规格的实型(fioat, double, 和long double),程序设计者可根据程序中对数据在值域,精度等方面的需要,选择适当的数据类型。

    • 2.           字符型是表示字符和字符串的数据类型。C++的字符常量用单引号,字符串常量用双引号。C++字符串以ˊ|0ˊ为结束标记,ˊ|0ˊ成为字符串结束符。字符型与整形有着密切的关系:一个字符实际上就是一个作为该字符代码的整数,因此可施加于整数的操作也同样可以施加于字符。由于这一原因,可以用字符表示小整数。


    3720377

    本章小结

    • 3.           枚举型是一种需要由程序设计者定义的数据类型。定义一个枚举型就是规定一组符号,用来表示程序中需要加以区分的不同事物。枚举型 与整型有着密切的关系:枚举型中的每一个符号惟一的对应一个整数,因此就是表示整数的符号常量。在定义枚举型时可以控制枚举符号与整数的对应关系。在程序中,枚举符号可以象整数那样加以利用。

    • 4.           逻辑型的类型修饰符是bool,因此也成为布尔型,是用来表达条件的数据类型。逻辑型数据的值只有true(逻辑真,表达条件成立)或false(逻辑假,表达条件不成立)两种可能。逻辑型与整型有着密切的关系:当逻辑型数据作为 数值使用时,true就是1,false就是0;而其他类型的数据作为逻辑数据使用时,一切0值转换为false,一切非0值转换为true。


    3720377

    本章小结

    • 5.           数值表达式的主要作用是完成数值计算。常量、变量和函数调用是三种最简单的表达式。通过操作符的连接,可以构造出任意复杂的表达式。当一个表达式中有许多操作符时,操作符的优先级和结合性决定了它们执行的程序。括弧()可以用来控制操作符的执行顺序,()具有最高的优先级。

    • 6.           赋值(=)、符合赋值(+=等)以及增1减1(++,--)等是具有副作用的操作符,它们只能作用于变量。并要改变变量的值。对于这些作用于变量的操作符,除后增1和后减1外,其操作结果就是那个被作用的变量(被改变了值的变量),因此可以 继续作为“作用于变量的操作符”的作用对象。


  • Login