一、语句
程序设计语言的语句按功能可以分为三类:说明语句,操作语句,控制语句。
控制语句用于控制语句的执行流程。所有程序都只包含3种控制结构:顺序结构、选择结构 和 循环结构。
二、选择结构
C++使用if语句和switch语句构成选择结构。
1.if语句
(1)一个分支的if语句
if(x>0)
cout<<x<<endl;
(2)if-else语句
if(x>y)
{
cout<<"max = "<<x;
}
else
{
cout<<"max = "<<y;
}
(3)if语句的嵌套
C++规定,else总是与它接近的if配对。
注意:
- 区分"=“和”=="
"="是赋值运算符
"=="是逻辑运算符
int a = 2;
int b = 3;
if(a=b)//错误,无论a和b的值如何改,结果都将是a=b
{
cout<<"a = b"<<endl;
}
else
{
cout<<"a != b "<<endl;
}
- 浮点数的比较
由于浮点数具有一定的误差,比较两个浮点数是否相等的方法应为
if(fabs(a-b)<精度)
float a = 2.0000000000000000000000000001;
float b = 2.00000000000000000000000001;
if (a == b)
{
cout << "a = b" << endl;
}
else
{
cout << "a != b " << endl;
}//运行结果为a=b
2.switch语句
switch语句的形式如下:
switch(表达式)
{
case 常量表达式1: 语句1;
case 常量表达式2: 语句2;
...
case 常量表达式n: 语句n;
//default: 语句n+1;
}
- 常量表达式必须互不相同
- 各个case和default出现的次序可以任意。在每个case分支都带有break的情况下,case的顺序不影响执行结果。
- switch语句可以嵌套。
- switch语句根据一个表达式不同的可能值作选择执行,它适用于条件判断比较简单的多路选择。
3.?:运算符
通用格式:expression1?expression2:expression3
int a = 2;
int b = 3;
cout<<"max="<<(a>b?a:b)<<endl;
二、循环控制
循环结构有while语句、do-while语句和for语句。
一般循环结构包含三个部分:循环的初始化、循环条件和循环体。
设计循环时必须要明确循环的算法是什么,进入循环的条件是什么,结束循环的条件是什么。
while(表达式)
{
//循环体
}
do
{
//循环体
}while(表达式);
for([表达式1];[表达式2]:[表达式3])
{
//循环体
//表达式1,2,3皆可省略
//表达式1:通常用于变量的初始化
//表达式2:循环控制表达式
//表达式3:循环体之后执行
}
三、转向语句
C++中的转向语句主要有:break,continue,return和goto语句。
1.break语句
break语句无条件结束switch语句或循环语句
2.continue语句
continue语句用于循环体中,终止当前一次循环,不执行continue的后续语句,转向循环入口继续执行。
3.return语句
返回表达式的值,并中断函数的执行。
4.goto语句
无条件转向语句,在C++中滥用goto语句将降低程序的可读性与可维护性。在不破坏程序基本流程控制的情况下,可以适当使用goto语句实现必要的跳转。