C语言基础-全部运算符.ppt

上传人:max****ui 文档编号:8614516 上传时间:2020-03-30 格式:PPT 页数:27 大小:527.81KB
返回 下载 相关 举报
C语言基础-全部运算符.ppt_第1页
第1页 / 共27页
C语言基础-全部运算符.ppt_第2页
第2页 / 共27页
C语言基础-全部运算符.ppt_第3页
第3页 / 共27页
点击查看更多>>
资源描述
C语言基础 4 复习算术运算符 赋值运算符 逗号运算符自增 自减运算符关系运算符逻辑运算符顺序结构程序设计本节对应教材内容 P16 P20 P28 P29 P38 P39 P56 P58 运算符和表达式 学习运算符应注意 运算符功能与运算量关系要求运算量个数要求运算量类型运算符优先级别 了解 结合方向结果的类型 算术运算符和表达式基本算术运算符 结合方向 从左向右优先级 负号 2 3 4 说明 可为单目运算符时 右结合性两整数相除 结果为整数 要求两侧均为整型数据 例5 2 5 2 0 例5 2 5 2 1 10 5 1 5 5 2 例5 2 2 5 2 0 2 5 例5 2 1 5 2 11 10 15 1 05 5 2 赋值运算符和表达式简单赋值运算符符号 格式 变量标识符 表达式作用 将一个数据 常量或表达式 赋给左侧的一个变量 复合赋值运算符种类 含义 exp1op exp2 exp1 exp1opexp2 例a 3 d func c d 2 说明 结合方向 自右向左优先级 14左侧必须是变量 不能是常量或表达式 赋值表达式的值与变量值相等 且可嵌套 赋值转换规则 使赋值号右边表达式值自动转换成其左边变量的类型 例3 x 2 y a b 3 例floatf inti i 10 f i 则f 10 0 例inti i 2 56 结果i 2 例 a b c 5a b 5 a 5 c 6 a b 4 c 6 a b 10 c 2 表达式值为5 a b c值为5 b 5 a 5 表达式值11 c 6 a 11 表达式值10 a 10 b 4 c 6 表达式值5 a 5 b 10 c 2 说明 结合方向 自右向左优先级 12左侧必须是变量 不能是常量或表达式 赋值表达式的值与变量值相等 且可嵌套 不推荐使用 赋值转换规则 使赋值号右边表达式值自动转换成其左边变量的类型 例 a 12 a a a a 例 inta 2 a 4 1 a a a a 3 a 264等价于a a a a a a a 0等价于a a a a a a a a 3 逗号运算符和表达式形式 表达式1 表达式2 表达式n结合性 从左向右优先级 15逗号表达式的值 等于表达式n的值用途 常用于循环for语句中 例a 3 5 a 4a 3 5 a 4 a 5例x a 3 6 3 x a 3 6 a例a 1 b 2 c 3 printf d d d a b c printf d d d a b c b c a 15 表达式值60 a 15 表达式值20 赋值表达式 表达式值18 x 18 逗号表达式 表达式值18 x 3 1 2 3 3 2 3 逗号运算符和表达式形式 表达式1 表达式2 表达式n结合性 从左向右优先级 15逗号表达式的值 等于表达式n的值用途 常用于循环for语句中 例 includemain intx y 7 floatz 4 x y y 6 y z printf x d n x 运行结果 x 3 自增 自减运算符 作用 使变量值加1或减1种类 前置 i i 先执行i 1或i 1 再使用i值 后置i i 先使用i值 再执行i 1或i 1 例j 3 k j j 3 k j j 3 printf d j j 3 printf d j a 3 b 5 c a b a 3 b 5 c a b k 4 j 4 k 3 j 4 4 3 c 20 a 4 c 15 a 4 自增 自减运算符 作用 使变量值加1或减1种类 前置 i i 先执行i 1或i 1 再使用i值 后置i i 先使用i值 再执行i 1或i 1 说明 不能用于常量和表达式 如5 a b 结合方向 自右向左优先级 2 3 4 例 i i i 3 printf d i 3 例 i i 3 printf d i 关系运算符和表达式关系运算符种类 结合方向 自左向右优先级别 例c a b c a b a b c a b ca bc a b c 关系表达式的值 是逻辑值 真 或 假 用1和0表示 例inta 3 b 2 c 1 d f a b a b cb cbf a b c 表达式值1 表达式值1 表达式值0 d 1 f 0 关系运算注意 例若a 0 b 0 5 x 0 3 则a x b的值为 0 例5 2 7 8在C中是允许的 值为 0 例inti 1 j 7 a a i j 4 0 则a 2 例 a 0结果为 A 100结果为 1 0 关系运算注意 例注意区分 与 inta 0 b 1 if a b printf aequaltob elseprintf anotequaltob 例应避免对实数作相等或不等的判断如1 0 3 0 3 0 1 0结果为可改写为 fabs 1 0 3 0 3 0 1 0 1e 6 0 逻辑运算符和表达式逻辑运算符种类 逻辑运算真值表 C语言中 运算量 0表示 假 非0表示 真 运算结果 0表示 假 1表示 真 例ab x ya b x y a a b 优先级 结合方向 a x x b a b x y a b x y a a b 优先级 结合方向 例a 4 b 5 aa ba b a b4 0 25 3 2 8 4 0 c d 值为1 值为0 值为1 值为1 值为1 值为1 5 3 2 8 4 0 值为1 优先级 结合方向 短路特性 逻辑表达式求解时 并非所有的逻辑运算符都被执行 只是在必须执行下一个逻辑运算符才能求出表达式的解时 才执行该运算符 例a m a b n c d 结果m 0 n 1 条件运算符与表达式一般形式 expr1 expr2 expr3执行过程功能 相当于条件语句 但不能取代一般if语句 例求a b printf a b d n b 0 a b a b 例 a b Y N x 2 1 1 0 x 0 x x c a c z c a A c 条件运算符可嵌套如x 0 1 x 0 1 0 优先级 13 结合方向 自右向左如a b a c d c d a b a c d c d expr1 expr2 expr3类型可不同 表达式值取较高的类型 例x a b x 0 表达式值为 b x 0 表达式值为 a x y 1 1 5 x y 值为1 0 x y 值为1 5 顺序结构程序设计 1966年 Bohra和Jacopini证明了 使用顺序 分支 也叫做 选择 和循环这三种基本结构可以表示任何一个算法的基本单元 结构化程序设计的三种基本结构 语句 C语言的种类 表达式语句控制语句空语句复合语句 顺序结构程序设计 在顺序结构程序中 各语句是按照位置的先后次序顺序执行的 且每个语句都会被执行到 顺序结构程序的函数体中 是完成具体功能的各个语句和运算 主要包括 1 变量类型的说明 变量定义 2 提供数据语句 变量输入或赋值 3 运算部分 程序的主体部分 4 输出部分 输出必要的结果 例1 编写程序 输入一个圆的半径 计算这个圆的面积 程序功能 计算圆的面积 main floatpi 3 14159 r s printf Inputradius scanf f 程序的运行情况 Inputradius 5 6 areais 98 47 顺序结构程序设计 例1 写成无参无返回值的函数形式 voidareacount 函数声明main areacount 函数调用 voidareacount 函数定义 floatpi 3 14159 r s printf Inputradius scanf f 例2 输入任意三个整数 求它们的和及平均值 功能 设计一个顺序结构程序 求三个整数的和及平均值 main intnum1 num2 num3 sum floataver printf Pleaseinputthreenumbers scanf d d d 中 3 0 改为 3 将程序转换成无参无返回值的函数形式 顺序结构程序设计 算术运算符和表达式赋值运算符和表达式逗号运算符和表达式自增 自减运算符关系运算符和表达式逻辑运算符和表达式顺序结构程序设计 小结 1 课后仔细阅读本节内容 理解运算符及其表达式 以及顺序结构程序设计的基本思路 2 改正程序错误P52训练2 2 3 阅读教材P48例2 11 体会getch字符输入函数的用法 并做P54练习10 作业
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


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


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

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


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