Kiểm tra tính hợp lệ của đầu vào
Thuộc phần Nền tảng cơ bản trong hành trình C của Coddy. Bài học 35 trên 63.
Khi nhận đầu vào từ người dùng, bạn cần xác minh đầu vào hợp lệ trước khi sử dụng trong chương trình.
Để xác thực đầu vào số nguyên, bạn có thể kiểm tra giá trị trả về của scanf:
int number;
int result = scanf("%d", &number);Hàm scanf trả về số mục được đọc thành công:
if (result == 1) {
// Đã đọc đầu vào (input) thành công
printf("Valid input: %d\n", number);
} else {
// Đầu vào không hợp lệ
printf("Invalid input!\n");
}Để kiểm tra phạm vi, hãy dùng câu lệnh điều kiện sau khi đọc đầu vào:
if (number >= 1 && number <= 100) {
printf("Number is within valid range (1-100)\n");
} else {
printf("Number is outside valid range!\n");
}Thử thách
DễViết một chương trình đọc một số nguyên từ người dùng và kiểm tra tính hợp lệ theo hai cách:
- Kiểm tra xem đầu vào có thực sự là số nguyên không (bằng giá trị trả về của scanf)
- Kiểm tra xem số nguyên có nằm trong khoảng từ 10 đến 50 (bao gồm cả hai đầu) không
Chương trình của bạn cần in ra:
- "Valid input!" nếu đầu vào là số nguyên hợp lệ từ 10 đến 50.
- "Invalid input type!" nếu đầu vào không phải là số nguyên.
- "Out of range!" nếu đầu vào là số nguyên nhưng không nằm trong khoảng từ 10 đến 50.
Tự làm thử
#include <stdio.h>
int main() {
// Viết code của bạn ở đây
return 0;
}Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Nền tảng cơ bản
2Biến
Kiểu dữ liệuSố nguyênSố thực - DoubleKý tựGiá trị BooleanHằng sốCơ bản về printfQuy tắc đặt tên biếnChuyển đổi kiểu phần 1Chuyển đổi kiểu phần 2Thử thách ôn tập5Đầu vào và đầu ra
Ký hiệu định dạngCơ bản về scanfThử thách ôn tập #1Kiểm tra tính hợp lệ của đầu vàoThử thách ôn tập #2Tự luyện tập: Trình biên dịch C online