Cプログラミングにおける意思決定と分岐?

Cpuroguraminguniokeru Yi Si Jue Dingto Fen Qi



プログラミング言語の重要な要素は決定を下す能力であり、コンピューターは特定の条件に応じて特定の実行パスをたどるようにプログラムされています。 1970 年代初頭に開発された C 言語は、人気があり、次のような機能を提供する最も初期のプログラミング言語の 1 つです。 意思決定 を通じた能力 分岐する

C プログラミングにおける意思決定とは何ですか?

Cプログラミングでは、 意思決定 は、プログラマーが効果的なプログラムを構築するために習得する必要がある中心的なスキルです。意思決定は、さまざまな条件を評価し、その結果に基づいて最適な行動方針を選択するプロセスです。 if-else ステートメントを使用すると、 意思決定 決定は条件に基づいて行われ、if-else ステートメントを使用して行われます。条件が true の場合、コードが実行されます。一方、 false の場合は、else ステートメントに含まれるコードが実行されます。

C プログラミングにおける分岐とは何ですか?

Cプログラミングでは、 分岐する 条件の結果に基づいて実行フローを変更できるようにする手法です。 分岐 特定の状況の結果に応じて、プログラムがコードの特定のブロックを実行できるようにします。







C プログラミングにはさまざまなタイプの分岐があります。 if-else スイッチ 、 と 条件演算子 。で switch ステートメント の場合、プログラムは値を評価し、利用可能なケースのリストから関連するオプションを選択します。条件演算子は省略表現です if-else 短いコードを記述できるステートメント。



C プログラミングにおける意思決定と分岐

意思決定 C プログラミングのプロセスには、条件文を使用してプログラムの実行フローを制御することが含まれます。 分岐 プログラムは、特定の条件の結果に基づいて、さまざまなコード セットを実行できます。



Cプログラミングでは、 意思決定 、 と 分岐する 以下を通じて達成されます。





  • if ステートメント
  • if-else ステートメント
  • switch ステートメント
  • ネストされた if
  • else-if ラダー
  • ブレークステートメント
  • continue ステートメント

1: if ステートメント

最も簡単な方法は、 意思決定をする C プログラミングによって提供されるのは、 if ステートメント 。の if ステートメント 指定された条件をテストし、条件が true の場合にステートメント本体のコードを実行します。それ以外の場合、プログラムは、 if ステートメント 、その後のコードに続きます。

の構文 if 文 は:



もしも ( 状態
{
ステートメントのブロック。
}

以下のコードを見てください。

#include
整数メイン (
{
整数 = 二十 ;
もしも ( 1つで > 5
{
プリントフ ( 「数値は5より大きいです \n ;
}
プリントフ ( 「数値の値は : %d \n 、1つで ;
戻る 0 ;
}

上記のコードは変数「 1つで ” を値 20 に設定し、if ステートメントを使用してそれが 5 より大きいかどうかを確認します。5 より大きい場合、プログラムは「」を出力します。 数値が5より大きいです ”。最後に、「」の値を出力します。 1つで ”。

出力

2: if-else ステートメント

if-else ステートメントは、条件が true か false かに基づいてさまざまなコード ブロックを実行できるようにする if ステートメントの修正です。

もしも ( 状態 {
// 実行するコード もしも 条件は 真実
} それ以外 {
// 実行するコード もしも 条件は 間違い
}

その結果、条件が true の場合は最初のコード ブロックが実行され、条件が false の場合は 2 番目のコード ブロックが実行されます。

例として次のコードを考えてみましょう。

#include
整数メイン (
{
整数 = 10 ;
もしも ( 1つで > 5
{
プリントフ ( 「数値は5より大きいです \n ;
} それ以外 {
プリントフ ( 「数値は10未満です」 ;
}
戻る 0 ;
}

上記のプログラムは変数 num を作成し、値 10 を与えます。 if ステートメント 、「」かどうかを判断します。 1つで 「」は 5 より大きいです。 num が 5 より大きいです 「」の場合は「」が印刷されます。 1つで 「」が5を超えると「」と表示されます。 数値は 10 未満です num が 5 以下の場合、プログラムは 0 を返し、正常に実行されたことを示します。

出力

3: switch ステートメント

もう一つの重要なツールは、 意思決定 C プログラミングでは、 スイッチ 声明。の スイッチ ステートメントは次のように特定の条件をチェックします if-else ステートメント ただし、その状態について複数の可能性をチェックできます。これは、さまざまな結果を扱うときに役立ちます。

を使用するための構文 switch ステートメント C プログラミングでは次のようになります。

スイッチ ( 表現 {
場合 定数1:
// 実行するコード もしも 式は定数1と等しい
壊す ;
場合 定数2:
// 実行するコード もしも 式は定数2に等しい
壊す ;
...
デフォルト:
// 実行するコード もしも どのケースも一致しません
壊す ;
}

表現 はこの場合に評価される変数であり、 case ステートメント 比較される値も含めます。

例として次のコードを考えてみましょう。

#include

整数メイン ( {
整数 = 2 ;
スイッチ ( 1つで ) {
場合 1 :
プリントフ ( 「数字は1です」 ) ;
壊す ;
場合 2 :
プリントフ ( 「数字は2です」 ) ;
壊す ;
場合 3 :
プリントフ ( 「数字は3です」 ) ;
壊す ;
デフォルト:
プリントフ ( 「1、2、3以外の数字」 ) ;
壊す ;
}
戻る 0 ;
}

上記のプログラムは、switch ステートメントを使用して変数「」の値を調べる方法を示しています。 1つで ” をクリックして、関連するコード ブロックを実行します。この場合、「 1つで ” が 2 に初期化されると、出力は” 番号は2です ”。

出力

4: ネストされた場合

ネストされた if ステートメント 他のネストされた if ステートメント内に埋め込まれた分岐ステートメントです。他の条件文内の複数の条件をチェックすることで、より複雑な分岐ロジックが可能になります。内部 if ステートメント 外側の if ステートメントが true と評価された場合にのみ実行されます。

基本的な構文 ネストされた if ステートメント を以下に示します。

もしも ( 状態 ) {
もしも ( 表現 ) {
ステートメントのブロック。
} それ以外 {
ステートメントのブロック。
}
} それ以外 {
ステートメントのブロック。
}

例として次のコードを考えてみましょう。

#include

整数メイン ( ) {
int num1 = 1 ;
int num2 = 15 ;
int num3 = 7 ;

もしも ( 番号1 > 番号2 ) {
もしも ( 番号1 > 番号3 ) {
プリントフ ( 「num1=1 は最大の数です」 \n ) ;
}
それ以外 {
プリントフ ( 「num3=7 は最大の数です」 \n ) ;
}
}
それ以外 {
もしも ( 番号2 > 番号3 ) {
プリントフ ( 「num2=15 は最大の数です」 \n ) ;
}
それ以外 {
プリントフ ( 「num3=7 は最大の数です」 \n ) ;
}
}

戻る 0 ;
}

上記のプログラムは 3 つの整数を比較します。 番号1 「、」 番号2 '、 と ' 番号3 」と入れ子になった if ステートメントを使用して、どれが最大の数値であるかを判断します。まず比較するのは「 番号1 ' と ' 番号2 “、次に、それら 2 つの大きい方を“と比較します。 番号3 ”。出力には、どの変数が最大値を持つかが示されます。

出力

5: else-if ラダー

多数の基準が順番に存在する場合、複雑な問題を簡単に解決できる可能性があります。 はしごの場合 また else-if 式

以下は、 そうでなければはしご 声明:

もしも ( 条件1 )
{
ステートメントのブロック。
}
それ以外 もしも ( 条件2 )
{
ステートメントのブロック。
}
それ以外 もしも ( 条件3 )
{
ステートメントのブロック。
}
それ以外
{
デフォルトのステートメント
}

例として次のコードを考えてみましょう。

#include

整数メイン ( ) {
int マーク = 80 ;

もしも ( マーク > = 90 && マーク = 80 && マーク = 70 && マーク = 60 && マーク = 50 && マーク < 60 ) {
プリントフ ( 「グレード:D」 ) ;
}
それ以外 {
プリントフ ( 「評定:不合格」 ) ;
}
戻る 0 ;
}

上記のプログラムでは、 if-else ロジック 変数「marks」の現在の値に従ってグレードを決定します。 「マーク」の値に応じて、プログラムは A+ から Fail までの対応するグレードを出力します。

出力

6: ブレークステートメント

ブレークステートメント は、C プログラミングにおける重要な制御フロー ステートメントで、プログラマがループや switch ステートメントの動作を制御できるようにします。の ブレークステートメント C プログラミングには 2 つの用途があります。

  • ループが到達したとき 壊す ステートメントを実行すると、ステートメントはただちに終了され、プログラム制御はループに続くステートメントに渡されます。
  • switch ステートメントに使用することで、ケースを終了するために使用できます。

の構文は、 壊す 声明:

壊す ;

コード例を見てください。

#include

整数メイン ( ) {
整数 = 12 ;
その間 ( 1つで 15 ) {
壊す ;
}
}
戻る 0 ;
}

この C コード部分は、整数変数 ' 1つで ” は 22 未満なので、12 に初期化されます。ループ内で、” 1つで ” が 1 増加され、その値が次を使用してコンソールに報告されます。 プリントフ 。その後、ループは次のコマンドで終了します。 Break ステートメント if 'num' if ステートメントによって決定されるように、15 より大きいです。このコードは、12 ~ 15 (両端の値を含む) の「num」の値を出力した後、ループを効果的に終了します。プログラムは、正しく実行されたことを示す 0 を返して終了します。

出力

7: continue ステートメント

C プログラミングでは、 続く ステートメントは次のようなものです 壊す 声明。終了を強制する代わりに、ループの次の反復を強制し、その間のコードをスキップします。 for ループの条件付きテストと増分セクションは、 続く 表現。 while ループと do-while ループの条件テストは、次の結果としてプログラム コントロールによって渡されます。 続く 声明。

の構文 ステートメントを継続する は:

続く ;

この例を見てください。

#include

整数メイン ( ) {
整数 = 12 ;
その間 ( 1つで 15 ) {
続く ;
}
}
戻る 0 ;
}

上記のプログラムの while ループは、変数「 1つで 22 未満の場合は「」。 1つで ” がループ中に 15 を超えると、 続く ステートメントが実行され、ループの現在の反復はスキップされます。この場合、ループは 5 回実行され、毎回「num」の値が出力されます。 1つで 「」が 16 に達すると、ループは「」の反復をスキップします。 1つで ” は 16 であり、ループが終了するまで残りの反復が継続されます。

出力

結論

意思決定 分岐する は、現実世界のさまざまな条件を処理する複雑な対話型アプリケーションの作成を可能にする C 言語の重要なコンポーネントです。条件文、if-else および switch は、作成時に使用される主なケースです。 意思決定に基づく アルゴリズム。それでも 分岐する コードの編成に問題が生じる可能性がありますが、適切な計画と実行があれば、プログラマは特定の要件を満たす効率的でエラーのないプログラムを作成できます。