scanf関数 - 数値の入力
当ページのリンクには広告が含まれています。
スポンサーリンク
ここではプログラムの実行時に数値を入力する方法を紹介します。
数値の入力
数値の入力には scanf 関数を使用します。
scanf 関数
scanf 関数は printf 関数と扱い方が似ていますが、printf 関数は「出力を行う関数」、対して scanf 関数は「入力を行う関数」です。
プログラム実行中にユーザーに数値を入力させたい場合には「scanf 関数」を使います。
scanf("変換指定子", &変数名)
「変換指定子」とアンド「&」記号に続けて「変数名」を指定します。
例えば、整数型の数値を入力する場合はこんな感じです。
scanf("%d", &var);
このように scanf 関数を使って、数値の入力をする場合には「%」からはじまる「変換指定子」を使います。printf 関数とはの変換子とは異なる部分もあるので注意が必要です。
変換指定子
変換指定子は「変数の型」によって異なるので、以下のテーブルをご覧ください。
変数の型 | 概要 | 変換指定子 |
---|---|---|
int | 整数型 | %d |
float | 浮動小数点数型(単精度実数) | %f |
double | 浮動小数点数型(倍精度実数) | %lf |
サンプルプログラム
それでは scanf関数を使って、数値を入力し、その数値を出力するサンプルプログラムをみてみましょう。
#include <stdio.h> int main(void) { // 変数の定義 int x; // x の数値を入力 printf("x = "); scanf("%d", &x); // 入力した数値を出力 printf("%d\n", x); return 0; }
実行結果です。
x = 3 3
ここでは変数「x」に「3」を入力し、それを出力しました。
適切に入力・出力されていますね。
次は scanf関数を使った「簡単な入出力プログラミング」をみてみましょう。