单分支if语句:
语法: if (布尔表达式booleanExpression) { 语句块statement(s); }
示例:
若半径非负,则计算并输出圆的面积:
if (radius >= 0)
{
area = radius * radius * PI;
cout << "The area for the circle of" << "radius" << "is" << area;
}
判断i是否是0到10之间的整数:
if ((i>0) && (i<10))
cout << "i is an integer between 0 and 10";
提示用户输入一个整数,若该数是5的倍数则输出"HiFive",若为偶数则输出"HiEven":
#include <iostream>
using namespace std;
int main()
{
// Prompt the user to enter an integer (提示用户输入整数)
int number;
cout << "Enter an integer: ";
cin >> number;
if (number % 5 == 0)
cout << "HiFive" << endl;
if (number % 2 == 0)
cout << "HiEven" << endl;
return 0;
}
<aside> ⚠️
注意:常见错误 - if语句后多加分号
这是高频逻辑错误,虽不会导致编译或运行错误,但会改变程序逻辑。该错误在"换行写语句块"的编码风格更易出现,需特别注意。
错误写法:
if (radius >= 0); // 分号导致if语句体为空
{
// 无论radius是否非负,都会执行
area = radius * radius * PI;
cout << "The area " << " is " << area;
}
正确写法(等价):
if (radius >= 0)
{
area = radius * radius * PI;
cout << "The area " << " is " << area;
}
</aside>
if-else 双分支语句:
语法:
if (布尔表达式)
{
真分支语句块; // 布尔表达式为true时执行
}
else
{
假分支语句块; // 布尔表达式为false时执行
}
<aside> 💡
程序会根据布尔表达式的结果,二选一执行真分支或假分支,不会同时执行,也不会都不执行。
</aside>