华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第三讲 选择与循环

C+语言程序设计 第三讲选择与循环 潘建瑜@MATH.ECNU
1 第三讲 选择与循环 C++ 语言程序设计 潘建瑜@MATH.ECNU

关系运算与逻辑运算 口关系运算(比较大小) 口逻辑运算 口条件运算符 http://math.ecnu.edu.cn/-jypan
http://math.ecnu.edu.cn/~jypan 1 关系运算与逻辑运算 关系运算(比较大小) 逻辑运算 条件运算符

关系运算:比较大小 > 大于 = 大于等于 = 小于等于 1= 不等于 比较大小,结论是真则返回true, 否则返回false C++中用1表示true,0表示false bool型变量,赋值0时表示false,其他它值都表示true b001×1=1.5; /x1=true b0o1x2=0; /x2=false b001x3=-11; /x3=true ex03_bool_02.cpp 注意==与=的区别;对浮点数进行比较运算时尽量不要使用== 4 http://math.ecnu.edu.cn/~jypan
http://math.ecnu.edu.cn/~jypan 关系运算:比较大小 4 > 大于 = 大于等于 <= 小于等于 != 不等于 ► 比较大小,结论是 真 则返回 true ,否则返回 false ► C++ 中用 1 表示 true,0 表示 false ► bool 型变量,赋值 0 时表示 false,其他它值都表示 true bool x1=1.5; // x1=true bool x2=0; // x2=false bool x3=-11; // x3=true ex03_bool_02.cpp 注意 == 与 = 的区别;对浮点数进行比较运算时尽量不要使用 ==

逻辑运算 && 逻辑与 11 逻辑或 逻辑非 口运算法则 运算对象 与 或 非 A B A&&B AllB IA 0 0 0 0 1 0 1 0 1 1 1 0 0 1 0 1 1 1 1 0 5 http://math.ecnu.edu.cn/-jypan
http://math.ecnu.edu.cn/~jypan 逻辑运算 5 && 逻辑与 || 逻辑或 ! 逻辑非 运算对象 与 或 非 A B A&&B A||B !A 0 0 0 0 1 0 1 0 1 1 1 0 0 1 0 1 1 1 1 0 运算法则

逻辑运算:两点注意 (表达式1)&&(表达式2) 先计算表达式1的值,若是true,则计算表达式2的值; 若表达式1的值是false,则不再计算表达式2的值。 (表达式1)川川(表达式2) 先计算表达式1的值,若是false,则计算表达式2的值; 若表达式1的值是true,则不再计算表达式2的值 1=3;(1>3)&(i+) 1=3 i=3;(i>3)1川(i+); i=? 6 http://math.ecnu.edu.cn/~jypan
http://math.ecnu.edu.cn/~jypan 逻辑运算:两点注意 6 (表达式1) && (表达式2) 先计算 表达式1 的值,若是 true,则计算 表达式2 的值; 若 表达式1 的值是 false,则不再计算 表达式2 的值。 i=? i=3; (i>3) && (i++); i=3 i=3; (i>3) || (i++); (表达式1) || (表达式2) 先计算 表达式1 的值,若是 false,则计算 表达式2 的值; 若 表达式1 的值是 true,则不再计算 表达式2 的值

条件运算符 条件表达式?表达式1:表达式2 先计算条件表达式的值,若是true,则用表达式1作为整个表达式的值, 否则就用表达式2的值作为整个表达式的值 =x>0?1:-1; x>y x yj 条件运算符是C++中唯一的三目运算符 7 http://math.ecnu.edu.cn/-jypan
http://math.ecnu.edu.cn/~jypan 条件运算符 7 条件表达式 ? 表达式1 : 表达式2 ► 先计算 条件表达式 的值,若是 true,则用 表达式1 作为整个表达式的值, 否则就用 表达式2 的值作为整个表达式的值 z = x>0 ? 1 : -1; z = x>y ? x : y; 条件运算符是 C++ 中唯一的三目运算符

举例 #include using namespace std; int main() { int×1=1,x2=2,x3=3; bool b1,b2,b3; b1=(x1x2>x1; /1有没有问题? cout<"b3="<b3<"\n"; return 0; 8 http://math.ecnu.edu.cn/~jypan
http://math.ecnu.edu.cn/~jypan 举例 8 #include using namespace std; int main() { int x1=1, x2=2, x3=3; bool b1, b2, b3; b1 = (x1 x2 > x1; // 有没有问题? cout << "b3=" << b3 << " \n"; return 0; }

2 选择结构 口F语句:单分支、双分支、多分支、嵌套 ▣SWITCH语句 http://math.ecnu.edu.cn/-jypan
http://math.ecnu.edu.cn/~jypan 2 选择结构 IF 语句:单分支、双分支、多分支、嵌套 SWITCH 语句

IF语句:单分支 用法一:单分支 f(表达式) 语句块 if (x>y) cout y) if (x>y) t xj t xj ×=y5 x =y; y=t; y=t; ex03_if_01.cpp 10 http://math.ecnu.edu.cn/~jypan
http://math.ecnu.edu.cn/~jypan IF 语句:单分支 10 if (x>y) { t = x; x = y; y = t; } if (x>y) t = x; x = y; y = t; 用法一:单分支 if (表达式) 语句块 if (x>y) cout << x; 这里的语句块可以是单个语句或复合语句(即多个语句用大括号括起来) ex03_if_01.cpp

F语句:双分支 用法二:双分支 f(表达式) 语句块 ex03_if_02.cpp else if (x>y) cout <x; 语句块 else cout <y; 注意:条件判断表达式两边的小括号不能省略! 11 http://math.ecnu.edu.cn/-jypan
http://math.ecnu.edu.cn/~jypan IF 语句:双分支 11 用法二:双分支 注意:条件判断表达式两边的小括号不能省略! if (表达式) 语句块 else 语句块 if (x>y) cout << x; else cout << y; ex03_if_02.cpp
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第二讲 C++编程基础.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第一讲 计算机基础知识.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(应用阅读)IEEE浮点运算标准.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)课程介绍(授课教师:潘建瑜).pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(应用阅读)C++ 程序设计简明讲义(共十六讲).pdf
- 《互联网营销理论与工具运用》课程教学资源(PPT课件)08 互联网营销方案策划.pptx
- 《互联网营销理论与工具运用》课程教学资源(PPT课件)07 互联网直播营销.pptx
- 《互联网营销理论与工具运用》课程教学资源(PPT课件)06 互联网视频营销.pptx
- 《互联网营销理论与工具运用》课程教学资源(PPT课件)05 互联网社交媒体营销.pptx
- 《互联网营销理论与工具运用》课程教学资源(PPT课件)04 互联网电子邮件营销.pptx
- 《互联网营销理论与工具运用》课程教学资源(PPT课件)03 互联网搜索引擎营销.pptx
- 《互联网营销理论与工具运用》课程教学资源(PPT课件)02 互联网营销市场调研.pptx
- 《互联网营销理论与工具运用》课程教学资源(PPT课件)01 走进互联网营销.pptx
- 《互联网营销理论与工具运用》课程教学资源(讲义)课程标准.docx
- 《互联网营销理论与工具运用》课程教学资源(习题)题库3.pdf
- 《互联网营销理论与工具运用》课程教学资源(习题)题库2.pdf
- 《互联网营销理论与工具运用》课程教学资源(习题)题库1.pdf
- 《互联网营销理论与工具运用》课程教学资源(教案)项目八 互联网营销方案策划.pdf
- 《互联网营销理论与工具运用》课程教学资源(教案)项目七 互联网直播营销.pdf
- 《互联网营销理论与工具运用》课程教学资源(教案)项目六 互联网视频营销.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(应用阅读)定积分数值计算.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(应用阅读)定积分的近似计算(数值积分).pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第四讲 函数.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第五讲 数组(一)数值数组.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第五讲 数组(二)字符数组(字符串).pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第六讲 指针.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(应用阅读)矩阵乘积快速算法——Strassen 算法.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(应用阅读)Gauss消去法求解线性方程组.pdf
- 《C++ 语言程序设计》课程教学资源(应用阅读)Fast and stable matrix multiplication.pdf
- 《C++ 语言程序设计》课程教学资源(应用阅读)内存分配——栈和堆.pdf
- 《C++ 语言程序设计》课程教学资源(应用阅读)Pointers and Memory.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第七讲 输入输出与(C 语言)文件操作.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第八讲 排序算法.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第九讲 类与对象(I)面向对象基础.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第十讲 类与对象(II)面向对象进阶.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第十一讲 类与对象(III)面向对象提高.pdf
- 《C++ 语言程序设计》课程教学资源(应用阅读)C++ vector使用方法.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第十二讲 运算符重载与自动类型转换.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第十三讲 继承与派生.pdf
- 华东师范大学:《C++ 语言程序设计》课程教学资源(课件讲稿)第十四讲 多态.pdf