第四章 选择结构:if和switch语句
目录标题
4.1控制结构
控制结构:把几条独立的指令组织成一个入口,一个出口的独立逻辑单元,用来控制程序的执行流程。
复合语句:由一对"{}"括起来的按顺序执行的一组语句。
选择控制:在多个程序语句中进行选择的一种控制结构。
4.2逻辑表达式
if(判断语句)
语句;
else
语句;
4.2.1使用关系和相等运算符的逻辑表达式
逻辑表达式(条件):值为true或false的表达式。
4.2.2使用逻辑运算符的逻辑表达式
逻辑与(&&):一错取错,同对取对。
逻辑或(||):一对取对,同错取错。
逻辑非(!):对取错,错取对。
4.2.3运算符的优先级
4.2.4书写c++条件
4.2.5字符和字符串的比较
4.2.6布尔类型赋值
4.2.7布尔类型值的表示
4.2.8用整数表示逻辑值
4.3if控制语句概述
4.3.1带两个分支的if语句
流程图:表示控制语句结构逐步执行的图。
4.3.2简单if语句
格式:if(条件)
语句t;
说明:如果条件为true,则执行语句T,否则跳过它。
4.3.3带有字符和字符串的if语句条件
格式:if(条件)
语句t;
else
语句f;
说明:如果条件为真,则执行语句t,跳过语句f;否则,跳过语句t,执行语句f。
4.3.4 if语句的格式
4.4带复合选项的if语句
4.4.1程序风格——使用复合的true或false语句编写if语句
4.4.2跟踪if语句
手工跟踪(桌面检测):算法执行的逐步模拟。
4.5算法的决策步骤
决策步骤:从几个选项中进行选择的算法步骤。
全局常量:在函数之前声明。可在所有函数中使用的常量。
伪代码:用自然语言和c++保留字来描述算法步骤。
4.5.1程序风格——使用全局常量增强程序的可读性和可维护性
4.5.2关于标识符作用域的注意事项
4.5.3在结构图中添加数据流信息
4.5.4关于软件开发方法的说明
4.6检查算法的正确性
4.7嵌套if语句和多分支条件判断
嵌套if语句:一个if语句作为另一个if语句的true任务或false任务。
例子:
if(x>0)
numpos=numpos+1;
else
{
if(x<0)
numneg=numneg+1;
else
numzero=numzero+1;
}
4.7.1嵌套if语句和if语句序列的比较
4.7.2把嵌套if语句写成多分支条件判断语句
格式:
int x;
cin>>x;
if ( x > 0) cout<< ">0";
else if (x ==0) cout<< "=0";
else cout<<"<0";
4.7.3 条件顺序
4.7.4程序风格——验证变量值
4.7.5逻辑表达式的短路检测
短路检测:一旦逻辑表达式的值能确定,便停止对表达式的进一步计算。
4.8switch控制语句
格式:
switch(选择器){
case 标号1:语句1;
break;
case 标号2:语句2;
break;
'
'
'
case 标号n:语句n;
break;
default:语句d;
}
4.8.1正确使用break关键字
4.8.2嵌套if语句和switch语句的比较
if比switch更加通用。