Проверка ввода
Часть раздела Fundamentals путешествия по C на Coddy — урок 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");
}Задание
ЛегкоНапишите программу, которая считывает целое число от пользователя и проверяет его двумя способами:
- Проверьте, является ли введенное значение целым числом (используя возвращаемое значение scanf)
- Проверьте, находится ли целое число в диапазоне от 10 до 50 (включительно)
Ваша программа должна выводить:
- "Valid input!", если введенное значение является целым числом от 10 до 50.
- "Invalid input type!", если введенное значение не является целым числом.
- "Out of range!", если введенное значение является целым числом, но не входит в диапазон от 10 до 50.
Шпаргалка
Чтобы проверить ввод целого числа, проверьте возвращаемое значение scanf:
int number;
int result = scanf("%d", &number);
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");
}Попробуйте сами
#include <stdio.h>
int main() {
// Напишите свой код здесь
return 0;
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Fundamentals
2Переменные
Типы данныхЦелые числаFloat и DoubleСимволыЛогический типКонстантыОсновы printfПравила именования переменныхПриведение типов. Часть 1Приведение типов. Часть 2Итоговое задание5Ввод и вывод
Спецификаторы форматаОсновы scanfПовторение: Задача №1Проверка вводаПовторение: Задача №23Операторы
Арифметические операторыОператор остатка от деленияИнкремент и декрементОператоры присваиванияОператоры сравненияЛогические операторы. Часть 1Логические операторы. Часть 2Логические операторы. Часть 3Задание на повторение