C语言第3章2类型、运算符与表达式.ppt

上传人:max****ui 文档编号:6334441 上传时间:2020-02-23 格式:PPT 页数:64 大小:1.08MB
返回 下载 相关 举报
C语言第3章2类型、运算符与表达式.ppt_第1页
第1页 / 共64页
C语言第3章2类型、运算符与表达式.ppt_第2页
第2页 / 共64页
C语言第3章2类型、运算符与表达式.ppt_第3页
第3页 / 共64页
点击查看更多>>
资源描述
第三章数据类型 运算符和表达式 2 主要内容 预备知识常量和变量的概念各种数据类型的常量及变量变量赋初值不同类型数据之间的混合运算常用运算符和表达式输入函数与输出函数 3 3 4 1变量和内存的概念 变量 程序运行过程中其值可以改变的量 系统为程序中的每一个变量开辟存储单元 变量名 字母开头 后跟字母 数字和下划线组成 C语言中的关键字不能作为变量名 4 3 4 1变量和内存的概念 include definePI3 1415926voidmain floatr s ar scanf f 说明 变量必须先定义后使用 变量中存储的只能是一个数据 往变量中存放数据的操作称为赋值 变量改变的是其值 而不是变量名 5 3 4 2变量赋初值 变量定义inta b c floatw doublez charc1 c2 类型标识符变量名1 常量1 变量名2 常量2 指定a b c为整型变量 指定w为单精度实型变量 指定z为双精度实型变量 指定c1 c2为字符型变量 6 3 4 2变量定义和赋初值 变量赋初值inti 0 inta 5 b 5 c 5 floatep 0 001 charc a 指定i为整型变量 初值为0 指定a b c的初值为5 指定ep的初值为0 001 指定c的初值为 a 7 注意 变量的 名 和变量的 值 不同 变量的 名 是该变量所代表的存储单元的标志 而变量的 值 是指存储单元中的内容 如 inta a 5 a 10 5 10 8 9 10 11 12 主要内容 预备知识常量和变量的概念各种数据类型的常量及变量变量赋初值不同类型数据之间的混合运算常用运算符和表达式输入函数与输出函数 13 3 6运算符和表达式 C运算符 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 及其扩展条件运算符 逗号运算符 指针运算符 求字节数 sizeof强制类型转换 类型 分量运算符 下标运算符 其它 14 学习运算符应注意 运算符功能与运算量关系要求运算量个数要求运算量类型运算符优先级别结合方向结果的类型 15 计算机实现操作有两种方式 运算 数学中所规定的各种基本运算 由运算符来实现 函数 对于复杂的运算 需要编制子函数来实现 标准函数 库函数 用户自定义函数 16 运算符与表达式 1 算术运算符和算术表达式2 赋值运算符和赋值表达式 17 加法运算或正号运算符 减法运算或负号运算符 乘法运算符 除法运算符 求余运算符 或称模运算符 完成现实世界的算术运算 算术运算符 18 关于求余运算 求余运算A B表示 求A除以B的余数求余运算要求 两侧都是整型数据 对于除法 如果参加运算的两个数中有一个数为实数 则结果是实数 实数除法 例 8 5的运算结果 38 5的运算结果 15 6 2 2 8000008 43 5 1 686000 19 算术表达式 算术表达式 用算术运算符和括号将运算对象连接起来的式子称为算术表达式 运算符有优先级和结合性 计算表达式的值时 按照优先级的高低依次计算 如果运算符优先级相同 则按规定的结合方向进行 算术运算符的结合性 从左到右 20 1 求三个数的算术平均值代数表达式 ave 算术表达式 ave a b c 3 2 根据三角形三边计算三角形面积代数表达式 算术表达式 sqrt s s a s b s c 3 根据半径计算圆的周长代数表达式 s 2 r算术表达式 s 2 3 14159 r 算术表达式 21 练习 1 下列运算符的操作数不能是float型的运算符是 A B C D 2 执行以下程序段 c的值是 inta 1 b 2 c c a b A 0B 1 2C 0 5D 1 答案 B 答案 A 22 算术运算符的优先级 23 自增 和自减运算 运算符的作用 是使变量的值增1 运算符的作用 是使变量的值减1 24 自增 和自减运算 自增和自减运算只能应用于整型变量和指针型变量 和 可以写在变量的左侧或右侧 而且其意义不同 变量名 和 变量名 先做运算 后取值 变量名 和 变量名 先取值 后做运算 25 自增 和自减运算 举例 N I N I 11 10 11 11 26 练习 已知i 7j i j i j i j i 7 8 8 8 27 若k和j为int型变量 运算表达式j 3 k j j 执行后 变量k的值为 变量j的值为 4 5 练习 28 关于自增和自减运算符的说明 自增和自减运算符的运算对象不能是常量或表达式 只能是单个变量 自增和自减运算符的结合方向是 自右向左 例 i 等价于 i i 等价于 i 29 2 赋值运算符和赋值表达式 赋值 在计算机程序中 要完成这样一种操作 将一个表达式的计算结果送到一个变量当中 简单的赋值运算符 赋值表达式 变量名 表达式赋值运算符的结合性 自右向左即 a b c相当于a b c 30 算术运算符与 结合在一起 形成复合的赋值运算符 复合的赋值运算符 例 i 2a 3a b 5 等价于i i 2等价于a a 3等价于a a b 5 31 C运算符 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 及其扩展条件运算符 逗号运算符 指针运算符 求字节数 sizeof强制类型转换 类型 分量运算符 下标运算符 其它 32 主要内容 预备知识常量和变量的概念各种数据类型的常量及变量变量赋初值不同类型数据之间的混合运算常用运算符和表达式输入函数与输出函数 33 3 5数据的混合运算 1 自动转换运算转换赋值转换2 强制类型转换 34 1 自动转换 运算转换 在进行运算时 不同类型的数据要先自动转换成同一类型 然后进行运算 转换的规则按图所示 int char short 高 低 long unsigned double float 转换由编译系统自动完成 转换按数据长度增加的方向进行 即按 向高看齐 的原则提升 较低 类型 以保证不降低精度 35 1 实型赋予整型 舍去小数部分 2 整型赋予实型 数值不变 但将以浮点形式存放 即增加小数部分 小数部分的值为0 3 字符型赋予整型 由于字符型为一个字节 而整型为两个字节 因此将字符的ASCII码值放到整型变量的低八位中 高八位为0 4 整型赋予字符型 只把低八位赋予字符型变量 5 double型赋予float型 丢失的部分按四舍五入向前进位 1 自动转换 赋值转换 36 注意 一个long型或double型数据给一个int型或float型变量赋值时 可能会引起数值溢出 注意 如果赋值运算符两边的数据类型不相同 系统将进行类型转换 即把赋值号右边的类型换成左边的类型 如果右边表达式的数据类型长度比左边长时 将丢失一部分数据 这样会降低精度 1 自动转换 赋值转换 37 练习 已知 doublea floatb intc chard 执行语句c d b c a 后 变量c的数据类型是 A doubleB floatC intD char 正确答案 C 38 2 强制类型转换 强制类型转换运算符 将一个类型的变量值强制转换为另一种类型 一般格式为 类型标识符 表达式例 k int int x float i float x 85 39 注意 对一个变量进行强制转换后 得到一个新的类型的数据 但原来变量的类型不变 例 x原为实型变量且值为2 6 在执行i int x后得到一个整数2 并把它赋给整型变量i 但x仍为实型 值为2 6 2 强制类型转换 40 练习 若有定义 floata 3 9 b 6 9 intc 执行语句c a int a b 3 2 后 c的值为 A 3B 3 9C 4D 4 4 正确答案 A 41 主要内容 预备知识常量和变量的概念各种数据类型的常量及变量变量赋初值不同类型数据之间的混合运算常用运算符和表达式输入函数与输出函数 42 3 7输入函数与输出函数 输出 计算机向外部输出设备 显示器 打印机等 输出数据输入 从输入设备 键盘 鼠标 扫描仪等 向计算机输入数据在使用系统库函数时 要用预编译命令 include 包含有关的头文件 include 标准输入输出库函数 include stdio h 标准输入输出库函数 43 3 7 1格式输出函数printf printf函数一般格式 printf 格式控制 输出表列 格式控制是由双引号括起来的字符串 包含三种信息 1 格式说明 由 和格式字符组成 如 d f等 它的作用是将输出的数据按照指定的格式输出 2 普通字符 需要原样输出的字符 3 转义字符 用于控制输出 输出表列是一些要输出的数据 44 3 7 1格式输出函数printf printf函数一般格式 printf 格式控制 输出表列 普通字符输出表列printf sum d n sum 格式说明转义字符 printf d d n a b 45 格式说明项 由 与格式字符组成 其作用是将数据转换为指定的格式输出 按不同类型的数据有以下不同的格式字符 d ld 按整型数据的实际长度输出 md mld m为指定的输出字段的宽度 如数据的位数小于m 则左端补空 若数据位数大于m 则按实际长度输出 c 用于输出一个字符 f 用于以小数形式输出实数 包括单 双精度 m nf m nlf 指定输出的数据共占m位 其中包括n位小数 如数据的位数小于m 则左端补空 若数据位数大于m 按实际长度输出 小数位数被截断时按四舍五入输出 3 7 1格式输出函数printf 46 inta 1 b 25 c 125 longx 356142 printf d 5d n a b printf 5d 2d n c c printf ld d n x x 输出结果为 例 47 3 7 2格式输入函数scanf scanf函数一般格式 scanf 格式控制 地址表列 scanf函数的功能是按照指定的格式输入数据 可以输入任意类型的多个数据 格式控制与printf函数含义相同 它由若干个格式说明构成 其作用是控制转换输入数据的类型 地址表列由若干个地址构成 它们可以是变量的地址 也可以是字符串的首地址 48 如何分隔数据 用隐含的分隔符 在输入数据中用空格或换行符分隔数据 scanf d d d 输入数据3 4 5则a 3 b 4 c 5 49 scanf格式字符 50 scanf格式字符 说明 对unsigned型变量所需要的数据 可以用 u d或 o x格式输入 可以指定输入数据所占的列数 系统自动按它截取所需数据 如果在 后有一个 附加说明符 表示跳过它指定的列数 输入数据时不能规定精度 51 字符数据的输入输出用putchar函数输出一个字符 putchar函数 字符输出函数 的作用是向终端输出一个字符 一般形式为putchar c 可以是字符型变量或整型变量 52 例1 输出单个字符 includevoidmain chara b c a B b O c Y putchar a putchar b putchar c putchar n 53 字符数据的输入输出用getchar函数输入一个字符 getchar函数 字符输入函数 的作用是从计算机终端输入一个字符 getchar函数没有参数 一般形式为getchar 函数的值就是从输入设备得到的字符 54 3 7 3数学函数 使用数学库中的函数时 应该首先用预处理命令 include指明要用到的数学函数的描述所在的头文件 调用数学函数时 要给出函数名 后面是一对圆括号 括号内是使用函数所需的参数 参数可以是常量 变量或表达式 55 例 计算并打印2的3次方的语句可以写成 printf 7 2f pow 2 0 3 0 调用的数学函数pow需要两个参数 这两个参数都是double型的 返回值也是double型的 语句执行结果为 8 00 56 常用数学函数 57 变量的定义 inta b c 指定a b c为整型变量 unsignedlower 指定lower为无符号整型变量 floatx y 指定x y为实型变量 doublez 指定z为双精度实型变量 charc1 c2 指定c1 c2为字符型变量 课堂练习 58 1 定义一个无符号长整变量L1 unsignedshortS1 unsignedlongL1 定义一个无符号短整变量S1 定义一个浮点类型变量F1 定义一个双精度变量D1 floatF1 doubleD1 按要求写语句 59 转义字符程序测试 includevoidmain printf thisisoneprograminc n printf nthisisoneprograminc printf athisisoneprograminc n printf thisisoneprograminc n printf b bthisisoneprograminc n printf thisisoneprograminc printf rsecondprogram n printf thisisoneprograminc printf tsecondprogram n printf thisisoneprograminc printf 101secondprogram n printf thisisoneprograminc printf x1asecondprogram n 60 写出下面算术表达式的值 设x 2 5 a 10 y 4 7求表达式的值x a 3 int x y 2 4x 2 5 a 10 y 4 7 a 3 10 3 1 int x y int 7 2 7 a 3 int x y 1 7 7 a 3 int x y 2 7 2 1 a 3 int x y 2 4 1 4 0 x a 3 int x y 2 4 2 5 0 最后结果 2 5 61 思考题 简单程序设计 输入三角形的三边长 求三角形的面积 62 63 要求 深刻理解在计算机中各类型数据在内存中的存储形式 取值范围和能够对它进行的操作 深刻理解各基本类型作了short long unsigned扩展之后与原类型之间的区别 深刻理解各种整型常量的形式 字符常量 转义字符和符号常量的意义和作用 熟练掌握每一种变量的定义格式 深刻理解每一个算术运算符的功能 使用格式 计算结果 尤其是 深刻理解赋值运算符 的意义 注意与数学中的等号相区别 复合赋值运算符的执行过程和执行结果 64 小结 1 在计算机中对数据进行描述 数据的基本类型 整型 字符型 浮点类型 数据在在内存中的存储形式 取值范围和能够对它进行的操作 扩展基本类型 short long unsigned2 常量 各种整型常量的形式 字符常量 转义字符 符号常量 3 变量 定义格式 4 运算符 算术运算符 优先级 赋值运算符 与数学中的等号相区别
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!