在 C++ 中,嵌套 if-else 语句是合法的,这意味着您可以在一个 if 或 else if 语句内使用另一个 if 或 else if 语句。
嵌套 if 语句是一种 if 语句的变体,其中一个 if 语句可以在另一个 if 语句中嵌套。
嵌套 if 语句可以帮助您更精确地测试多个条件。
语法
C++ 中 嵌套 if 语句的语法:
if( boolean_expression 1) { // 当布尔表达式 1 为 true 时执行 if(boolean_expression 2) { // 当布尔表达式 2 为 ture 时执行 } }
您可以嵌套 else if...else,方式与嵌套 if 语句相似。
if (condition1) { // 如果 condition1 为 true,则执行此处的代码块 if (condition2) { // 如果 condition2 也为 true,则执行此处的代码块 } else { // 如果 condition2 为 false,则执行此处的代码块 } } else { // 如果 condition1 为 false,则执行此处的代码块 }
实例
以下实例通过 if 嵌套来实现不同条件的判断:
实例
#include <iostream>
using namespace std;
int main() {
int x = 10;
if (x < 20) {
cout << "x 小于 20" << endl;
if (x < 15) {
cout << "x 小于 15" << endl;
}
}
return 0;
}
在上面的示例中,首先检查 x 是否小于 20。 如果条件成立,if 语句中的第一条消息将被输出。 然后,程序将检查 x 是否小于 15。 如果这个条件也成立,那么 if 语句中的第二个消息将被输出。
当上面的代码被编译和执行时,它会产生下列结果:
x 小于 20 x 小于 15
另一个嵌套 if 实例:
实例
#include <iostream>
using namespace std;
int main ()
{
// 局部变量声明
int a = 100;
int b = 200;
// 检查布尔条件
if( a == 100 )
{
// 如果条件为真,则检查下面的条件
if( b == 200 )
{
// 如果条件为真,则输出下面的语句
cout << "a 的值是 100,且 b 的值是 200" << endl;
}
}
cout << "a 的准确值是 " << a << endl;
cout << "b 的准确值是 " << b << endl;
return 0;
}
当上面的代码被编译和执行时,它会产生下列结果:
a 的值是 100,且 b 的值是 200 a 的准确值是 100 b 的准确值是 200
以下实例演示了嵌套 if-else 语句的使用:
实例
#include <iostream>
using namespace std;
int main() {
int x = 15;
if (x < 20) {
cout << "x 小于 20" << endl;
if (x < 15) {
cout << "x 小于 15" << endl;
} else {
cout << "x 大于等于 15" << endl;
}
} else {
cout << "x 大于等于 20" << endl;
}
return 0;
}
以上实例中,首先检查 x 是否小于 20,如果条件成立,if 语句中的第一条消息将被输出。
然后,程序将检查 x 是否小于 15,如果这个条件也成立,那么 if 语句中的第二个消息将被输出。如果第二个条件不成立,则 else 语句中的消息将被输出。
如果 x 大于或等于 20,则 if 语句的第一个条件不成立,并且 else 语句中的消息将被输出。
当上面的代码被编译和执行时,它会产生下列结果:
x 小于 20 x 大于等于 15