Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

C言語の実行文(ステートメント)とは?入出力文と代入文の基本を解説

C言語で書かれたプログラムには、実際に処理を行う「実行文(実行可能なステートメント)」が含まれています。コンパイラは、これらの実行文を機械語へと翻訳する役割を担います。

ユーザーがプログラムを実行すると、コンパイル済みの機械語命令が順番に処理され、プログラムが動作します。

実行文の種類

C言語における実行文は、主に以下の2種類に分けられます。

  • 入出力文(Input-Output Statements)
  • 代入文(Assignment Statements)

入出力文

入出力文は、データの受け渡しを担当する重要なステートメントです。

  • 値をメモリ上に格納することを「入力操作」と呼びます。
  • 計算処理の後、結果はメモリに保存され、「出力操作」によってユーザーの画面に表示できます。
  • すべての入出力操作は、入出力関数を使って行われます。
  • 最も一般的な入出力関数は、プリプロセッサディレクティブ #include <stdio.h> を通じて提供されます。
  • 特によく使われるのが printf() 関数と scanf() 関数です。

printf() 関数

画面にデータを出力するための関数で、書式は次のとおりです。

printf("書式文字列", 出力リスト);

記述例:

printf("3つの数の平均 = %f", avg);

printf() は、指定された書式文字列に従って値を整形し、画面に表示します。

scanf() 関数

キーボードからデータを読み込むための関数で、書式は次のとおりです。

scanf("書式文字列", 入力リスト);

記述例:

scanf("%d %f", &a, &b);
  • scanf() は、プログラムの実行中にキーボードから入力されたデータをメモリへコピーします。
  • 入力リストの各変数名の前には、アドレス演算子であるアンパサンド(&)を付ける必要があります。

代入文

代入文は、変数に値を格納するステートメントであり、プログラム内で算術演算を行う際にも使用されます。

構文

変数 = 式

記述例:

  • c = a + b;
  • avg = sum / 3;
  • r1 = (b * b − 4 * a * c);

サンプルプログラム

以下は、3つの整数の平均値を計算するCプログラムの例です。

#include<stdio.h>
main(){
    int a,b,c,d;
    float avg;
    printf("Enter values for a,b,c:\n");
    scanf("%d%d%d",&a,&b,&c);
    // scanf()は実行中にキーボードから入力されたデータをメモリへコピーする
    d=a+b+c; // 代入文
    avg=d/3;
    printf("Average avg=%f",avg);
}

実行結果

このプログラムを実行すると、次のような出力が得られます。

Enter values for a,b,c:2 3 4
Average avg=3.000000
  1. C言語のシフト演算とは?左シフト・右シフト・補数の基本をわかりやすく解説

    問題 C言語を使用して、ある数値に対する左シフト・右シフト・補数(ビット反転)を求める簡単なプログラムを作成するには、どのようにすればよいのでしょうか。 解決方法 左シフト(<<) 変数の値を1ビットだけ左へシフトすると、その値は2倍になります。「a × 2」を計算したのと同じ結果です。 例:a = 10 の場合、a << 1 = 20 右シフト(>>) 変数の値を1ビットだけ右へシフトすると、その値は元の半分になります。「a ÷ 2」の整数除算と同じ結果です。 例:a = 10 の場合、a >> 1 = 5 サンプルプログラム 以下は、シ

  2. C言語の基本データ型を徹底解説!int・char・floatの種類とサイズ一覧

    C言語の基本データ型とは? C言語のコンパイラがサポートする基本データ型は、大きく分けて次の4つです。 整数型(Integer) 文字型(Character) 浮動小数点型(Floating-point) 倍精度浮動小数点型(Double precision floating point) プログラムで扱う値の種類(整数・文字・実数など)に応じて適切な型を選ぶことは、正確で効率的なコードを書くための第一歩です。なお、各データ型のサイズや表現できる値の範囲は、使用するコンパイラや実行環境によって異なる場合がある点に注意してください。 整数型(Integral Data Type) 整数型は