C++ ネスト if 文
C++ では、ネストif-else 文は有効です。つまり、1つのif 或 else if文の中に別のif 或 else if文。
ネスト if 文は if 文の変種であり、1つの 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;
}
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 文内の2番目のメッセージが出力されます。
上記のコードをコンパイルして実行すると、次の結果が生成されます:
x 小于 20 x 小于 15
別のネスト if の例:
例 2
#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;
}
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 文の使用法を示します:
例 3
#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;
}
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 文内の2番目のメッセージが出力されます。2番目の条件が満たされない場合は、else 文内のメッセージが出力されます。
x が 20 以上の場合、if 文の最初の条件は成立せず、else 文内のメッセージが出力されます。
上記のコードをコンパイルして実行すると、次の結果が生成されます:
x 小于 20 x 大于等于 15その他の拡張
C++ 条件分岐