入力検証
CoddyのCジャーニー「基礎」セクションの一部。レッスン 35/63。
ユーザーからの入力を受け取るときは、プログラムで使用する前に、その入力が有効かどうかを確認することが重要です。
整数入力の検証では、scanfの戻り値を確認できます。
int number;
int result = scanf("%d", &number);scanf関数は、正常に読み取られた項目の数を返します。
if (result == 1) {
// 入力を正常に読み取りました
printf("Valid input: %d\n", number);
} else {
// 入力が無効でした
printf("Invalid input!\n");
}範囲の検証では、入力を読み取った後に条件文を使用します。
if (number >= 1 && number <= 100) {
printf("Number is within valid range (1-100)\n");
} else {
printf("Number is outside valid range!\n");
}チャレンジ
簡単ユーザーから整数を読み取り、次の2つの方法で検証するプログラムを書きましょう。
- 入力が実際に整数かどうかを確認する(scanfの戻り値を使用)
- 整数が10から50までの範囲内(両端を含む)かどうかを確認する
プログラムは次のように出力してください。
- 入力が10から50までの範囲内の有効な整数の場合は「Valid input!」。
- 入力が整数でない場合は「Invalid input type!」。
- 入力が整数だが、10から50までの範囲内ではない場合は「Out of range!」。
自分で試してみよう
#include <stdio.h>
int main() {
// ここにコードを書いてください
return 0;
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: Cオンラインコンパイラ