今日の人気記事

  1. printf関数の変換指定子
  2. コンパイルと実行 - GNU Compiler Collection(gcc) - Linux環境
  3. int main(void) - プログラムの基本
  4. while文 - 繰り返し処理
  5. 入力した自然数の各桁の数字の和を計算する

if文 - 条件分岐

当ページのリンクには広告が含まれています。

スポンサーリンク

ここではC言語で条件分岐する if文を紹介します。

if文

プログラムは上から下へ一連の流れに沿って、処理を行います。if文は、この流れに分岐を設ける役割をします。例えば、変数の値が10より大きいときは「ある処理」を行う。それ以外は「ある処理」を行わない……など。

それではif文の記述方法をみてみましょう。

if(条件式)
  処理;

このように「条件式」を満たした場合の「処理」を記述します。「条件式」を満たさない場合はこの「処理」は実行されません。

条件式を満たすことを「真(true)」、満たさないことを「偽(false)」といい、「真」は「0以外」の値、「偽」は「0」を意味します。

処理が複数行ある場合は、以下のように「処理」を波括弧「{」と「}」の間に記述します。

if(条件式) {
  処理1;
  処理2;
  …
}

処理がひとつの場合でも以下のように「処理」を波括弧「{」「}」の間に記述することができます。

if(条件式) {
  処理1;
}

波括弧「{」「}」を使った方が分かりやすい(読みやすい)プログラムになるかもしれませんね。

それでは実際に if文を使ってみましょう。

サンプルプログラム

入力した数値が0以外の場合は、その数値を出力する、というサンプルプログラムです。

#include <stdio.h>

int main(void)
{
  /* 変数の宣言 */
  int a;

  /* 数値の入力 */
  printf("数値を入力してください = ");
  scanf("%d", &a);

  /* 条件分岐 */
  if (a)
    printf("%d\n", a);

  return 0;
}

実行結果です。

数値を入力してください = 3
3

ここでは「3」を入力したので、入力した数値が出力されています。お使いの環境でこのプログラムをコンパイルし、さまざまな数値を入力してみてください。

次は条件式が偽(false)のときの処理も指定できる「if 〜 else文」をみていきます。

基本構文 の人気記事

  1. printf関数の変換指定子
  2. 条件演算子(3項演算子)「? :」
  3. 関数のプロトタイプ宣言
  4. 変数の値を出力 - printf 関数
  5. while文 - 繰り返し処理
  6. エスケープシーケンス - 特殊文字
  7. int main(void) - プログラムの基本
  8. else if文 - 複数の条件式 - 条件分岐
  9. 配列の要素を出力(表示)する
  10. break文 - ループから抜ける

関連記事(一部広告含む)