このセクションでは、条件ステートメント (、>=、= など) を使用せずに条件ステートメントを使用する方法を説明します。 =) 数値が奇数か偶数かをチェックする場合。
条件文を使用すると、数値が奇数か偶数かを簡単に確認できます。数値を 2 で割って、余りが 0 かどうかを確認できます。 0の場合は偶数です。それ以外の場合は、数値と 1 の AND 演算を行うことができます。答えが 0 の場合は偶数、そうでない場合は奇数です。
ここでは条件文は使用できません。奇数が存在するか偶数が存在するかを確認する 2 つの異なる方法を見ていきます。
ここでは、文字列の配列を作成します。インデックス 0 の位置は「偶数」を保持し、インデックス 1 の位置は「奇数」を保持します。数値を 2 で割った余りをインデックスとして取得することで、結果を直接取得できます。
#include<stdio.h> main() { int n; char* arr[2] = {"Even", "Odd"}; printf("Enter a number: "); //take the number from the user scanf("%d", &n); printf("The number is: %s", arr[n%2]); //get the remainder to choose the string }
Enter a number: 40 The number is: Even
Enter a number: 89 The number is: Odd
これは 2 番目の方法です。この方法では、いくつかのトリックを使用します。ここでは論理演算子とビット演算子が使用されます。まず、数値と 1 の AND を計算します。次に、論理和を使用して奇数または偶数を出力します。論理 AND 演算は、ビット単位の AND の結果が 1 の場合は奇数の結果を返し、それ以外の場合は偶数を返します。
#include<stdio.h> main() { int n; char *arr[2] = {"Even", "Odd"}; printf("Enter a number: "); //take the number from the user scanf("%d", &n); (n & 1 && printf("odd"))|| printf("even"); //n & 1 will be 1 when 1 is present at LSb, so it is odd. }
Enter a number: 40 even
Enter a number: 89 odd
以上が条件文を使用せずに「偶数」または「奇数」を出力する C プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。