C 言語の scanf 関数の詳しい説明とコード例
C 言語は、さまざまなソフトウェア開発で広く使用されている、入出力を行うプログラミング言語です。関数はプログラムを作成する際に非常に重要な役割を果たします。このうちscanf関数はC言語の標準入力を読み取るための関数の一つで、キーボードからデータを特定の形式に従って読み込み、指定した変数に格納することができます。この記事では、scanf 関数の使い方を詳しく紹介し、サンプルコードをいくつか紹介します。
まず、scanf 関数の基本的な構文を見てみましょう。
int scanf(const char* format, ...);
その中で、format は入力データの形式を指定するために使用される文字列です。さまざまな種類のデータについては、形式文字列で対応するプレースホルダーを使用して識別する必要があります。たとえば、%d は整数型を表し、%f は浮動小数点型を表し、%c は文字型を表し、%s は文字列を表します。そして... は、任意の数のパラメータを受け入れることができることを意味します。これらのパラメータは、入力を受け取るために使用される変数です。変数の順序は、フォーマット文字列内のプレースホルダに対応する必要があることに注意してください。
以下は、scanf 関数の使用法を説明するための一般的な例です。
Read integers
#include <stdio.h> int main() { int a; printf("请输入一个整数:"); scanf("%d", &a); printf("你输入的整数是:%d ", a); return 0; }
上記のコードは、最初にプロンプト情報を出力します。 , ユーザーに整数の入力を求め、scanf 関数を使用して入力された整数を読み取り、変数 a に格納します。最後に、再度 a の値を出力します。 scanf 関数では、入力値が a に対応するメモリ アドレスに格納されることを示すために、アドレス文字 & を変数 a の前に追加する必要があることに注意してください。
浮動小数点数の読み取り
#include <stdio.h> int main() { float f; printf("请输入一个浮点数:"); scanf("%f", &f); printf("你输入的浮点数是:%f ", f); return 0; }
上記のコードは、変数 a の型が float に変更され、フォーマット文字列がもそれに合わせて変更しました。
文字の読み取り
#include <stdio.h> int main() { char c; printf("请输入一个字符:"); scanf(" %c", &c); printf("你输入的字符是:%c ", c); return 0; }
フォーマット文字列の %c の前にスペースがあることに注意してください。これは、前の改行文字を無視するためです。 %cを使用して文字を読み込む場合、ユーザーが入力した文字に改行文字が含まれている場合は、入力文字とみなされます。
文字列の読み取り
#include <stdio.h> int main() { char str[100]; printf("请输入一个字符串:"); scanf("%s", str); printf("你输入的字符串是:%s ", str); return 0; }
文字列を読み取るときは、%s プレースホルダーを使用できます。これにより、ユーザーが入力した文字列が指定された文字配列に保存されます。ここでは、入力文字列を格納するために長さ 100 の文字配列 str を定義します。
上記の例は、scanf 関数の基本的な使用例の一部にすぎません。実際、scanf 関数は、より複雑な書式文字列やより多くのデータ型もサポートできます。実際のアプリケーションでは、複数の値の入力をサポートしたり、特定の文字をスキップしたりするなど、さまざまな書式文字列と制御文字を組み合わせることで、より強力な機能を実現することもできます。
つまり、scanf 関数は C 言語で非常に重要で一般的に使用される関数の 1 つであり、標準入力ストリームから特定の形式でデータを読み取り、指定した変数に保存するのに役立ちます。この記事の紹介を通じて、読者の皆様が scanf 関数の使い方をよりよく理解して使いこなし、実際のプログラミングで柔軟に使いこなせるようになることを願っています。
以上がC言語のscanf関数の使い方を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。