1.顺序结构程序
从上到下一条条顺序执行各语句。
2.关系运算和逻辑运算(布尔代数范围)
非顺序结构中,涉及到用关系运算和逻辑运算表达的条件句。
2.1 关系运算和关系表达式
优先级:算术运算符 > 关系运算符 > 赋值运算符
关系运算符: < > <= >= > == !=
关系表达式: 表达式 关系运算符 表达式
其中表达式可以是:算术、关系、逻辑、赋值、字符表达式
a+a > a + b (a == 3)>(b == 5) ‘a’ > ‘b’
每个表达式都应该有一个确定值,关系表达式的值是逻辑值1和0.
2.2 逻辑常量和逻辑变量
逻辑型 = 布尔型
布尔常量:false true 类型标识符:bool
布尔变量:flag //bool flag = true (占一个字节,存放1/0,可算术运算)
2.3逻辑运算和逻辑表达式
优先级:! > 算术运算符 > 关系运算符 > && | | > 赋值运算符
逻辑运算符: ! >>> && | |
逻辑表达式:表达式 逻辑运算符 表达式
逻辑运算符两侧可以是:任何表达式或任何数值类型的数据,系统最终都是转化为0和非0来判断真和假。
3. 选择结构和if语句
3.1 if (表达式)语句1 else 语句2
else总与它上面的最近的、未配对的 if 配对。除非用{ }限定范围。
if语句是一个整体,else不能独立使用,只是在里面嵌套了语句。
- if(x < y) cout << x << endl;
- if(x < y).... ; else ... .;
- if(x < y).... ; else if... .; else if....; else if......; else.....;
在{ }的复合语句中定义的变量只能在本复合语句内有效,将这些变量局限在一个范围内,与外界隔离,避免其他地方误调用。
3.2 条件运算符和条件表达式
条件运算符 ?: ,C++中唯一一个三目运算符。
条件表达式 max = (a < b)? a : b ;
3.3 多分支选择结构与switch语句
switch(表达式) { //表达式可以是数值和字符类型
// 只起到语句标号作用,并不是 在此处判断
case 常量表达式1:语句1;break; à跳出switch结构,否则会往下执行
case 常量表达式2:
case 常量表达式3:
case 常量表达式4:语句4;break;
......
case 常量表达式n:语句n;break;
default :语句n+1
}
case值须各不相同,case、default出现次序不影响执行结果。
多个case可共用一组执行语句, 如:case 2 3 4 表达式,可以共用语句4。
4. 循环结构和循环语句
结构化程序设计的三种基本结构:
顺序结构、选择结构和循环结构,是各种复杂程序的基本构造单元。
4.1 while循环
while(表达式)循环体 ,当型循环。
循环体若超过一个语句,用{ }括起来。循环体应有趋于结束的语句。
4.2 do-while循环
do {//先执行一次循环体。
循环体
}while(表达式)
4.3 for循环
for(循环变量赋初值;循环条件;循环变量增值) 循环体
表达式1可省略,赋初值可放在外面
表达式2省略,死循环
表达式3省略,需保证循环能结束,如把变量的改变放到循环体里。
4.4 循环多层嵌套
4.5 提前结束循环
break 跳出循环体,提前结束循环。
continue 结束本次循环,跳过循环体重还没执行的语句,重新对下一次是否执行循环的判定。