Cấu trúc điều khiển là trái tim của mọi chương trình C, cho phép bạn tạo logic phức tạp, xử lý các điều kiện khác nhau, và thực hiện các tác vụ lặp đi lặp lại. Bài viết này sẽ giúp bạn làm chủ if-else, switch-case, và các loại vòng lặp.
Cấu trúc điều khiển là những câu lệnh cho phép chương trình thực hiện các hành động khác nhau dựa trên điều kiện hoặc lặp lại một khối mã nhiều lần. Đây là nền tảng để tạo ra các chương trình có logic phức tạp và tương tác với người dùng.
#include <stdio.h>int main() { int age = 18; if (age >= 18) { printf("Bạn đã trưởng thành!\n"); } return 0;}
Điều kiện trong C
Trong C, điều kiện được đánh giá là true nếu giá trị khác 0, và false nếu giá trị bằng 0. Điều này có nghĩa là bạn có thể sử dụng bất kỳ biểu thức nào trả về số.
if (điều_kiện_1) { // Mã thực hiện khi điều kiện 1 đúng} else if (điều_kiện_2) { // Mã thực hiện khi điều kiện 2 đúng} else { // Mã thực hiện khi tất cả điều kiện sai}
#include <stdio.h>int main() { int choice; printf("=== MENU ===\n"); printf("1. Tính tổng\n"); printf("2. Tính hiệu\n"); printf("3. Tính tích\n"); printf("4. Tính thương\n"); printf("Nhập lựa chọn (1-4): "); scanf("%d", &choice); switch(choice) { case 1: printf("Bạn đã chọn tính tổng\n"); break; case 2: printf("Bạn đã chọn tính hiệu\n"); break; case 3: printf("Bạn đã chọn tính tích\n"); break; case 4: printf("Bạn đã chọn tính thương\n"); break; default: printf("Lựa chọn không hợp lệ!\n"); break; } return 0;}
#include <stdio.h>int main() { int number; do { printf("Nhập một số dương: "); scanf("%d", &number); if (number <= 0) { printf("Số phải lớn hơn 0!\n"); } } while (number <= 0); printf("Bạn đã nhập số: %d\n", number); return 0;}
#include <stdio.h>int main() { int n; printf("Nhập số để in bảng cửu chương: "); scanf("%d", &n); printf("Bảng cửu chương %d:\n", n); for (int i = 1; i <= 10; i++) { printf("%d x %d = %d\n", n, i, n * i); } return 0;}
#include <stdio.h>int main() { int local_var = 10; // Biến cục bộ trong hàm main if (local_var > 5) { int block_var = 20; // Biến cục bộ trong khối if printf("Block variable: %d\n", block_var); } // printf("%d\n", block_var); // Lỗi! block_var không tồn tại ở đây return 0;}
#include <stdio.h>int main() { int n, is_prime = 1; printf("Nhập số cần kiểm tra: "); scanf("%d", &n); if (n < 2) { is_prime = 0; } else { for (int i = 2; i * i <= n; i++) { if (n % i == 0) { is_prime = 0; break; } } } if (is_prime) { printf("%d là số nguyên tố\n", n); } else { printf("%d không phải số nguyên tố\n", n); } return 0;}
#include <stdio.h>int main() { int sum = 0, count = 0; for (int i = 1; i <= 1000; i++) { if (i % 2 == 0) { sum += i; count++; } } float average = (float)sum / count; printf("Trung bình cộng các số chẵn từ 1 đến 1000: %.2f\n", average); return 0;}
Nắm vững các cấu trúc điều khiển là bước quan trọng để tạo ra các chương trình C có logic phức tạp và tương tác.
Lưu ý quan trọng
Luôn đảm bảo rằng điều kiện trong vòng lặp sẽ được cập nhật để tránh vòng lặp vô hạn. Đặc biệt chú ý với vòng lặp while và do-while.
Với những kiến thức này, bạn đã sẵn sàng để tạo ra các chương trình C phức tạp hơn và tiếp tục khám phá các khái niệm nâng cao như hàm, mảng và con trỏ.