C if...else ステートメント
C if...else ステートメント
このチュートリアルでは、例を使用して C プログラミングの if ステートメント (if...else およびネストされた if..else を含む) について学習します。
ビデオ:C if else ステートメント
C if ステートメント
if
の構文 C プログラミングのステートメントは次のとおりです:
if (test expression)
{
// code
}
if ステートメントはどのように機能しますか?
if
ステートメントは、括弧 ()
内のテスト式を評価します .
- テスト式が真と評価された場合、
if
の本体内のステートメント - テスト式が false と評価された場合、
if
の本体内のステートメント 実行されません。
テスト式が true (ゼロ以外の値) および false (0) に評価されるタイミングについて詳しくは、関係演算子と論理演算子を確認してください。
例 1:if ステートメント
// Program to display a number if it is negative
#include <stdio.h>
int main() {
int number;
printf("Enter an integer: ");
scanf("%d", &number);
// true if number is less than 0
if (number < 0) {
printf("You entered %d.\n", number);
}
printf("The if statement is easy.");
return 0;
}
出力 1
Enter an integer: -2 You entered -2. The if statement is easy.
ユーザーが -2 を入力すると、テスト式 number<0
true に評価されます。したがって、
あなたは -2 を入力しました
が画面に表示されます。
アウトプット 2
Enter an integer: 5 The if statement is easy.
ユーザーが 5 を入力すると、テスト式 number<0
false と評価され、 if
の本体内のステートメント 実行されません
C if...else ステートメント
if
ステートメントにはオプションの else
が含まれる場合があります ブロック。 if..else
の構文 ステートメントは:
if (test expression) {
// run code if test expression is true
}
else {
// run code if test expression is false
}
if...else ステートメントはどのように機能しますか?
テスト式が真と評価された場合、
if
の本文内のステートメントelse
の本文内のステートメント 実行からスキップされます。
テスト式が false と評価された場合、
else
の本文内のステートメント 処刑されるif
の本文内のステートメント 実行からスキップされます。
例 2:if...else ステートメント
// Check whether an integer is odd or even
#include <stdio.h>
int main() {
int number;
printf("Enter an integer: ");
scanf("%d", &number);
// True if the remainder is 0
if (number%2 == 0) {
printf("%d is an even integer.",number);
}
else {
printf("%d is an odd integer.",number);
}
return 0;
}
出力
Enter an integer: 7 7 is an odd integer.
ユーザーが 7 を入力すると、テスト式 number%2==0
false と評価されます。したがって、 else
の本体内のステートメント 実行されます。
C if...else はしご
if...else
ステートメントは、テスト式が true か false かに応じて 2 つの異なるコードを実行します。場合によっては、2 つ以上の可能性から選択する必要があります。
if...else はしごを使用すると、複数のテスト式をチェックして、さまざまなステートメントを実行できます。
if...else ラダーの構文
if (test expression1) {
// statement(s)
}
else if(test expression2) {
// statement(s)
}
else if (test expression3) {
// statement(s)
}
.
.
else {
// statement(s)
}
例 3:C の if...else ラダー
// Program to relate two integers using =, > or < symbol
#include <stdio.h>
int main() {
int number1, number2;
printf("Enter two integers: ");
scanf("%d %d", &number1, &number2);
//checks if the two integers are equal.
if(number1 == number2) {
printf("Result: %d = %d",number1,number2);
}
//checks if number1 is greater than number2.
else if (number1 > number2) {
printf("Result: %d > %d", number1, number2);
}
//checks if both test expressions are false
else {
printf("Result: %d < %d",number1, number2);
}
return 0;
}
出力
Enter two integers: 12 23 Result: 12 < 23
ネストされた if...else
if...else
を含めることができます 別の if...else
の本文内のステートメント
例 4:ネストされた if...else
以下に示すこのプログラムは、<
を使用して 2 つの整数を関連付けます。 、 >
と =
if...else
に似ています はしごの例。ただし、ネストされた if...else
を使用します この問題を解決するためのステートメント
#include <stdio.h>
int main() {
int number1, number2;
printf("Enter two integers: ");
scanf("%d %d", &number1, &number2);
if (number1 >= number2) {
if (number1 == number2) {
printf("Result: %d = %d",number1,number2);
}
else {
printf("Result: %d > %d", number1, number2);
}
}
else {
printf("Result: %d < %d",number1, number2);
}
return 0;
}
if...else
の本体の場合 ステートメントにはステートメントが 1 つしかないため、角括弧 {}
を使用する必要はありません .
たとえば、このコード
if (a > b) {
printf("Hello");
}
printf("Hi");
と同等です
if (a > b)
printf("Hello");
printf("Hi");
C言語