




已阅读5页,还剩56页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
程序设计 基础 1 第 3章 运算符和表达式、输入输出 按 运算符 的性质 分类 : 算术运算符、关系运算符、逻辑运算符、赋值运算符 、 。 按 操作数的个数 分类:单目运算符 、 双目运算符 和 三目运算符。 运算符 +运算 对象(操作数 ) =表达式 运算 对象 可以是 常量 、 变量 或 子表达式 。 2 目录 赋值运算符 增 1、减 1运算符 算术运算符 关系运算符 条件运算符 强制类型转换运算符 逻辑运算符 逗号运算符 类型转换运算符 位运算符 运算符的优先级和结合性 基本输入输出函数 3 算术运算符 表 3算术运算符及其含义 运算符 类型 运算 含义 - 单目 负值 * 双目 x*y 乘法运算 / 双目 x/y 除法运算 % 双目 x%y 求余(模)运算 - 双目 法运算 + 双目 x+y 加法运算 4 算术运算符 【 注意 】 ( 1)两个整数做除法运算结果仍为 整数,舍去小数部分的值。 例如: 6/4=1 当 参与运算的操作数中只要有一个为实型数据,则结果为 例如: = 2)求余运算限定参与运算的两个操作数为整数 。运算 的结果为整除后的余数, 余数的符号 与 被除数的符号 相同 。 例如 : 15%6=3 15%(3 (6= 算术运算符 表 3算术运算符的优先级与结合 性 6 运算符 类型 优先级 结合性 - 单目 高 低 从右向左 * / % 双目 从左向右 + - 双目 从左向右 算术运算符 算术运算符 +运算对象 =算术表达式 例如: 一元二次方程 的求根公式 : x= 写成两 个算术表达式: (-b+b*a*c)/(2*a) (b*a*c)/(2*a) 标准 数学 库 函数 , 需要 在程序的开头加上编译预处理命令。 #7 算术运算符 【 注意 】 术表达式 不要与 数学中的表达式 混淆 ( 1) 错误 : 44ac 正确 : 4*a*c ( 2) 错误 : + , 1/2+x/y 正确 : +x/y ( 3) 错误 : -b+b*a*c)/(2*a) 正确 : (-b+b*a*c)/(2*a) ( 4) 错误 : 2r、 2*r 正确 : 2*r #I 2*PI*r 8 赋值运算符 1简单赋值运算符 “ =” 双目 运算符,具有右结合性 。 格式: 变量 名 =表达式 【注意】 ( 1) “=” 可以连用 。 例如 : a=b=c=d=3; ( 2)赋值号的左边只能是 变量 ,而不允许是 算术表达式 或 常量 。例如: 45+x=100 45=x+y 9 赋值运算符 2 复合赋值运算符 5个涉及 算术 运算 : +=、 -=、 *=、 /=、 %= 5个 涉及 位 运算 : &=、 |=、 =、 = 复合 赋值 运算符 的优点: 书写 简洁 ,产生 的代码短,运行速度快。 格式 : 变量 名 复合赋值运算符 表达式 例如: a+=3 a=a+3 x*=y+8 x=x*(y+8) 10 等价于 等价于 自动加括号 赋值运算符 2 复合赋值运算符 例 : 已知 a=12, 求 表达式 a+=a-=a*a 解: 11 求 “ a-=a*a” a=a =12求 “ a+= a=a+(=后 264。 增 1、减 1运算符 增 1、 减 1运算符 都是 单目 运算符,具有 右结合性 。 操作数 只能是 变量 ,不能是 常量 或 表达式 。 它们 既可以作为 前缀运算符 ,也可以作为 后缀运算符 。 假设整型变量 i=3 12 表达式 计算过程 执行该语句后 的 执行该语句后 的 i+; i; i=i+1; 3 4 i; i=3 2 +i; i=i+1; i; 4 4 i= i; 2 2 i+: 使用 变量 自身加 1。 +i: 先自身加 1,再 使用 变量 i。 增 1、减 1运算符 【注意】 ( 1)常量 和表达式是不能 做 增 1、减 1运算。 例如: 8+ (m+n)+ ( 2) +和 右至左”。例如: i=3; %d”, ); 表达式 的值为: 量 i 的值为: 4 13 增 1、减 1运算符 【注意】 ( 3) 良好的程序设计风格提倡在一行语句中,一个变量最多只出现一次增 1或减 1运算 。 (i+)+(i+)+(i+); 相同 的表达式用不同的编译程序编译时,采用从左向右或从右向左不同的编译顺序,可能产生不同的运算结果。 %d, %d, i, i+); 14 不良风格 不良风格 关系 运算符 优先级: 、 = 优先级相同 =、 != 优先级相同 前 4个 的优先级 高于 后 2个的 优先级 15 运算符 运算 含义 xy 大于 = x=y 大于等于 = x=y 等于 != x!=y 不等于 关系 运算符 关系表达式 中: 如果 比较后关系式 成立 ,则称为“ 真 ”,用 非 0表示 。 如果 比较后关系式 不成立 ,则称为“ 假 ”,用 0表示 。 “ 计算关系表达式 的值”与“ 判断关系表达式值 的值 ”的差别是什么呢 ? 在 计算关系表达式 的值时 ,关系 成立 (真)用 1表示,而关系 不成立 (假)用 0表示 。 在 判断 关系表达式 的 值 时, 表达式 的值为 非 0,表示 关系 成立 (真) ; 表达式的值 为 0, 表示 关系 不成立(假) 。 16 关系 运算符 例如 : a=3, b=2, c=1,计算表达式的值: (a b)=c 先 计算关系表达式 ab 因 为 32成立(为真 ), 所以 结果 用 1表示 。 然后 再计算关系表达式 1=c 因为 1=1成立(为真),所以结果用 1表示 。 因此,表达式的值为 1。 17 关系 运算符 【注意】 ( 1) “ =” 为 关系 运算符中的 等于 运算符 。 “ =” 为 算术运算符中的 赋值 运算符 。 ( 2)数学中的表达式与 例如 :已知 a=3, b=2, c=1, abc 在 数学中表达式 的含义是“ b,同时 c” 。 在 关系表达式 中的含义是: 先 计算关系表达式 ab,因 32成立(为真),结果用 1表示 ; 然后 再计算关系表达式 1c,因 11不成立(为假),所以结果用 0表示 。 18 逻辑 运算符 逻辑运算 19 运算符 类型 运算 含义 优先级 优先级 ! 单目 !x 逻辑非 高 低 从右向左 & 双目 x&y 逻辑与 从左向右 | 双目 x|y 逻辑或 从左向右 x y !x x&y x|y 0 0 1 0 0 0 1 1 0 1 1 0 0 0 1 1 1 0 1 1 逻辑 运算符 数学 表达式 abc, 可以 写为: (ab) & (bc) 判断 字符型变量 以写为: (A) & ( a) & ( 计算 85,整个表达式的结果为“ 假 ”。 ( 2)对于 逻辑或 运算,如果第一个操作对象被判定为“真”,系统将不再判定或求解第二个操作对象。例如: 83 | 65 先计算 83,结果为“真”,系统将不再计算 65,整个表达式的结果为“ 真 ” 。 21 逻辑 运算符 【注意】 ( 3)判断 某一年 能被 4整除,但不能被 100整除。 能被 400整除。 ( = 0) & (00 != 0) 00 = 0 表达式为: ( = 0) & (00 != 0) | (00 = 0) 22 条件 运算符 条件 运算符 是 条件 表达式格式如下 : 表达式 1 ? 表达式 2 : 表达式 3 条件 表达式 的执行过程如下: 求第一个表达式的值。 当第一个表达式的值不为 0时,求第二个表达式的值;当第一个表达式的值为 0时,求第三个表达式的值。 条件表达式的结果是上步所求的第二个或第三个表达式的值。 例如: xy?100:500 求 两个变量中的最大 值 : ab?a:b 求 两个变量中的 最小值 : a的优先级相同 按位取反 xy 双目 按位右移 & x&y 双目 按位与 xy 双目 按位异或 | x|y 双目 按位或 位 运算符 对参与运算的两个操作数各对应的二进制位做按位与运算。只有对应的两个二进制位均为 1时,结果位才为 1,否则为 0。如: 18 & 6 = 2 假设参与运算的两个操作数长度为 16位,其运算过程如下: 0000000000010010 & 0000000000000110 000000000000010 29 位 运算符 对参与运算的两个操作数各对应的二进制位做按位或运算。只要对应的两个二进制位中有一个为 1时,结果位就为 1,否则为 0。如: 18|6=22 假设参与运算的两个操作数长度为 16位,其运算过程如下: 0000000000010010 | 0000000000000110 000000000010110 30 位 运算符 对参与运算的两个操作数各对应的二进制位做按位异或运算。只要对应的两个二进制位相异时,结果就为 1,否则为 0。如: 186=20 假设参与运算的两个操作数长度为 16位,其运算过程如下: 0000000000010010 0000000000000110 000000000010100 31 位 运算符 对参与运算的数据的各二进制位按位取反。如 : 18=设参与运算的两个操作数长度为 16位,其运算过程为: 0000000000010010 111111111101101 32 位 运算符 把 “” 号左边的操作数的各二进制位全部右移若干位(由 “ 右移位数 ” 指定),低位(右边)丢弃,高位(左边)补 0。 假设参与运算的第一个操作数长度为 8位,则: 00111110, 即 62。 A1后的值为 : 00011111, 即 31。 A2后的值为 : 00001111, 即 15。 若被移出的低位数中不包含 1,将操作数右移 n。 若被移出的低位数中包含 1,就不再具有除以 2 34 称为 取长度运算符 ,是单目运算符 。 该 运算符是用来计算操作数的字节大小 。 格式 如下: 作数 ) 操作数 可以是一个 数据类型 ,一个 变量 或是一个 表达式 。 35 36 【 程序 3# i,j,k,l,m; i= j= k= l= m= % d,%d,%d,%d,%dn”, i,j,k,l,m); ; 程序运行后输出 : 4,4,1,8,4 类型转换 37 自动类型转换 强制类型转换 类型转换 赋值中的类型转换 表达式中的类型转换 类型转换 有 如下变量定义语句: n; f; d; 执行语句 : n; 执行语句 : n = f; 执行语句 : f = n; d = f; 38 整型变量 当于取整运算 改变数据值的表示形式 类型转换 称为 类型提升 。 39 c h a r , s h o r ti n tu n s i g n e dl o n gd o u b l e f l o a 动 转换规则 类型转换 已知: i; f; 则有下面表达式值的类型: 10+a+i*f 这个表达式的运算过程是 : 第一 步,计算 i*f,结果 为 第二 步,计算 10+a,结果 为 07。 第三 步,计算 107+i*f,结果 为 40 c h a r , s h o r ti n tu n s i g n e dl o n gd o u b l e f l o a 运算符的优先级和结合性 41 优先级顺序 运算符种类 附加说明 结合方向 1 单目运算符 逻辑非 ! 按位取反 求负 - + 强制类型转换 () 从右向左 2 算术运算符 * / % 高于 + - 从左向右 3 关系运算符 = 高于 = != 从左向右 4 逻辑运算符 除逻辑非之外, & 高于 | 从左向右 5 赋值运算符 = += -= *= /= %= &= = |= = 从右向左 6 逗号运算符 , 从左向右 表 3常用运算符的优先级与结合性 42 运算符的优先级和结合性 【 程序 3运算符 的混合 使用 # a,b,c,d; a=1188!(88 a=s; i=115; a); /*输出字符 s*/ n); /*换行 */ s); /*输出字符 s*/ n); /*换行 */ i); /*输出 字符 s*/ n); /*换行 */ 15); /*输出字符 s*/ 0); /*换行 */ ; s s s s 46 字符 输入输出函数 【注意】 一个 函数参数 255范围 ,例如: 53); 3537 等价于 7); 47 字符 输入输出函数 字符 输入函数和输出函数分别是 和 。 ; 函数的功能 是 : 从 键盘输入一个字符 。 该 函数没有参数,但括号不能省略。 48 字符 输入输出函数 【 程序 3体会 能 # a,b,c; a=; b=; c= ; a); b); c); n); ; s u n s u 49 格式化 输入输出 函数 式输出函数 格式控制 ,输出值参数表 ); 格式控制 : 用 双引号括起来的字符串,也称为转换控制字符串 。包括 两种信息: 格式转换说明符 :由“ %” 和格式字符组成 。 普通字符 :即需要原样输出的字符 。 输出 值参 数 表 : 可以 有多个输出值 。 i; c; %d, %cn,i,c); 格式转换说明符 普通字符 输出值参数 表 50 格式化 输入输出 函数 参看 表 3 在函数 的格式转换说明符中,在 %和 格式字符 之间的位置,还可以根据需要插入 修饰符 ,用于对输出格式进行微 调整 ,参看 表 3 51 序号 输出语句 输出结果 1 %d”, 100); 100 ( 按实际需要宽度输出 ) 2 %4d”, 100); 100 ( 输出右对齐 , 左边补空格 ) 3 %7d”, %04d”, 100); 0100 ( 输出右对齐 , 左边补 0) 5 % 100); 100 ( 输出左对齐 ) 6 % 7 %o”, 10); 12 8 %#o”, 10); 012 9 %x”, 10); a 10 %#x”, 10); 01 %f”, 按实际需要宽度输出 ) 表 3格式化输出函数 52 序号 输出语句 输出结果 12 %12f”, 3 % 4 % 5 % 16 % 123); 00123 17 %“ ; ( 截去超过的部分 ) 18 %5s”,“ ; ( 宽度不够 , 按实际宽度输出 ) 19 %“ ; 0 %e”, 02 21 % 02 22 %g”, ( % 表 3格式化输出函数 53 格式化 输入输出 函数 式输入函数 格式控制 ,参数地址表 ); 格式控制 : 用 双引号括起来的 字符串 , 包括 两种信息: 格式转换说明符 :由“ %” 和格式字符组成 。 普通字符 :需要 原样输入的字符 。 参数地址 表 : 是 由若干变量的地址组成的列表,这些参数之间用逗号分隔。 54 格式化 输入输出 函数 在 函数 中,在 %和 格式符 之间也可插入格式 修饰符 ,见 表
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 无线基站维护培训课件
- 抖音商户短视频创意提案评审制度
- BWA-6047-生命科学试剂-MCE
- 江苏省兴化市顾庄区三校2024-2025学年七上数学期末教学质量检测模拟试题含解析
- 美发培训卷杠课件
- 国际多式联运操作规范与风险管理
- 航空行业三年发展报告:国际与国内市场的比较研究
- 2024-2025学年浙江省杭州市滨江区数学七年级第一学期期末调研试题含解析
- 云南司法警官职业学院《国画山水》2023-2024学年第一学期期末试卷
- 河道垃圾清理管理办法
- 监理通知回执单新
- 母婴保健-助产技术理论考核试题题库及答案
- 保洁服务考核表(仅供参考)
- dd5e人物卡可填充格式角色卡夜版
- 教师进企业实践三方协议书
- 施工现场隐患图片识别合集
- 山西省建设工程计价依据
- 煤矿在用安全设备检测检验制度
- GB/T 24632.2-2009产品几何技术规范(GPS)圆度第2部分:规范操作集
- GB/T 20428-2006岩石平板
- GB/T 11363-1989钎焊接头强度试验方法
评论
0/150
提交评论