我的c++学习记录 四———基本控制结构
顺序结构是最简单的控制结构,也是 C++ 程序默认的执行流程。在此结构中,程序将按照书写的先后顺序自上而下依次执行。一般情况下,若程序中不包含选择结构、循环结构和跳转语句,则此程序为顺序结构。例如新建 sequence.cpp 文件,输入:
#include<iostream>
using namespace std;
int main()
{
int a,b;
a=3;
b=5;
cout<<a+b<<endl; //输出 a+b 的值。
return 0;
}
此程序中,语句按照从上至下的顺序依次执行:首先定义了 a 和 b 两个 int 型变量,然后给 a 赋值为 3,b 赋值为 5,最后输出 a+b 的结果。
程序结果:
选择结构
根据判定条件的结果,选择相应执行语句的控制结构称为选择结构。
使用条件运算符实现选择结构
利用条件运算符 ? 可以实现一个简单的选择结构,其基本形式为:
条件表达式 ? 表达式1 : 表达式2
此方式需根据条件表达式的判断结果,选择表达式 1 或者表达式 2。其具体意义是:若条件表达式的布尔值为 TRUE ,则返回 表达式1 的值,否则返回 表达式2 的值。例如新建 choose1.cpp 文件,输入:
#include<iostream>
using namespace std;
int main ()
{
int x,y=7; //声明局部变量 x 和 y 并给 y 赋值为 7。
x=(y<6) ? 1 : 0; //使用条件运算符实现选择结构
cout<<"choose:"<<x<<endl; //输出返回结果
return 0;
}
程序中 x=(y<6) ? 1 : 0; 表达的是:若 y 小于 6 的布尔值为 TRUE,则返回 1 给 x,否则返回 0 给 x。显然,y 的值为 7,7 < 6 的值为 FALSE,即返回 0。
程序结果:
使用 if 语句实现选择结构
if 是典型的用于实现选择结构的语句,例如 if(X==1) i++; 当满足条件 X==1 时,执行语句 i++。if 语句一般分为简单的 if...else 语句、嵌套的 if 语句和 if...else if 语句三类。
简单的 if...else 语句 的基本结构为:
if(判定条件){
判定条件为 TRUE 时的执行语句
}
else{
判定条件为 FALSE 时的执行语句
}
和使用条件运算符实现选择结构的方式类似。首先进入判定条件,若判定条件的布尔值为 TRUE 则执行 if 花括号内的语句,不执行 else 花括号内的语句;若判定条件的布尔值为 FALSE 则执行 else 花括号内的语句,不执行 if 花括号内的语句。例如新建 choose2.cpp 文件,输入:
#include<iostream>
using namespace std;
int main ()
{
int x,y=7; //声明局部变量 x 和 y 并给 y 赋值为 7。
if(y<6){ //判定 y 是否小于 6。
x=1; //判定条件为 TRUE 时,x = 1。
}
else{
x=0; //判定条件为 FALSE 时,x = 0。
}
cout<<"choose:"<<x<<endl; //输出 x 的值。
return 0;
}
因为 y = 7 即 y < 6 的布尔值为 FALSE,所以 x 最后输出的值为 0。
程序结果:
嵌套的 if 语句 的基本结构为:
if(判定条件 1){
if(判定条件 2){
判定条件 1 和判定条件 2 均为 TRUE 时的执行语句
}
else{
判定条件 1 为 TRUE 且判定条件 2 为 FALSE 时的执行语句
}
}
else{
if(判定条件 3){
判定条件 1 为 FALSE 且判定条件 3 为 TRUE