未知数のデータを入力するC言語の方法
C言語では、ループ構造を使用して、データの個数が分からない場合の入力を実現できます。
よく使われている方法は、while ループなどのループ構造を使い、各ループで scanf 関数で入力データを読み込みます。入力データが一定の条件(特定の文字の入力や、ある特定の条件を満たすなど)を満たした場合にループを抜けます。
サンプルコードを以下に示します。
#include <stdio.h>
int main() {
int num;
printf("请输入一系列整数,以0结束:\n");
while (1) {
scanf("%d", &num);
if (num == 0) {
break;
}
// 进行处理,如打印输入的数字
printf("输入的数字为:%d\n", num);
}
return 0;
}
上記の例では、whileループを用いて入力から値を読み取っており、入力値が0であればループを抜けています。各ループ内でscanf関数を用いて入力した整数の読み取りと、それに伴う処理を行っています。
入力として scanf 関数を使用する場合は、入力するデータ型の型と scanf 関数の書式文字列が一致するかどうか確認することが重要です。そうしないと、エラーが発生します。このサンプルでは、整数の読み取りに %d の書式文字列を使用しています。