Trình biên dịch C trực tuyến – Chạy và kiểm tra mã C trong trình duyệt của bạn

Sử dụng trình biên dịch C trực tuyến miễn phí của chúng tôi để viết, biên dịch và chạy mã C ngay trong trình duyệt của bạn. Hoàn hảo cho người học và nhà phát triển C — không cần cài đặt.

🚀 2 tổng số lượt thực thi (2 trong tháng này)

📚 Ai cũng đang học C/C++ – bạn thì sao?

Loading...

💡 Hướng Dẫn C Cơ Bản Cho Người Mới Bắt Đầu

1. Khai Báo Biến và Hằng Số

C yêu cầu bạn khai báo kiểu của mỗi biến. Sử dụng #define hoặc const để định nghĩa các giá trị chỉ đọc.

int age = 30;
double pi = 3.14159;
char grade = 'A';
char name[] = "Alice";
bool isActive = 1; // true

// Hằng số
#define MAX_USERS 100
const char* COMPANY = "CodeUtility";

2. Câu Điều Kiện (if / switch)

Sử dụng if, else if, và switch để ra quyết định.

int x = 2;
if (x == 1) {
    printf("One\n");
} else if (x == 2) {
    printf("Two\n");
} else {
    printf("Other\n");
}

switch (x) {
    case 1:
        printf("One\n");
        break;
    case 2:
        printf("Two\n");
        break;
    default:
        printf("Other\n");
}

3. Vòng Lặp

Sử dụng for, while, và do-while để lặp lại.

for (int i = 0; i < 3; i++) {
    printf("%d\n", i);
}

int n = 3;
while (n > 0) {
    printf("%d\n", n);
    n--;
}

4. Mảng

Mảng lưu trữ nhiều phần tử cùng loại.

int numbers[3] = {10, 20, 30};
printf("%d\n", numbers[1]);

5. Cấu Trúc

struct cho phép bạn nhóm dữ liệu liên quan.

struct Person {
    char name[50];
    int age;
};

struct Person p = {"Alice", 30};
printf("%s is %d years old\n", p.name, p.age);

6. Nhập/Xuất Console

Sử dụng printfscanf cho nhập/xuất console.

char name[50];
printf("Enter your name: ");
scanf("%s", name);
printf("Hello, %s\n", name);

7. Hàm

Hàm đóng gói logic có thể tái sử dụng. Khai báo kiểu trả về, tên và tham số.

int add(int a, int b) {
    return a + b;
}

printf("%d\n", add(3, 4));

8. Con Trỏ

Sử dụng con trỏ để lưu trữ địa chỉ bộ nhớ và thao tác dữ liệu gián tiếp.

int x = 10;
int* ptr = &x;

printf("Value of x: %d\n", x);
printf("Address of x: %p\n", ptr);
printf("Value from pointer: %d\n", *ptr);

*ptr = 20;
printf("Updated x: %d\n", x);

9. Nhập/Xuất Tệp

Sử dụng fopen, fprintf, fscanf, và fclose cho các thao tác tệp.

FILE* file = fopen("file.txt", "w");
fprintf(file, "Hello File");
fclose(file);

char line[100];
file = fopen("file.txt", "r");
fgets(line, sizeof(line), file);
printf("%s", line);
fclose(file);

10. Xử Lý Chuỗi

Sử dụng các hàm từ <string.h> như strlen, strcpy, và strcmp.

#include <string.h>

char text[] = "Hello";
char copy[10];

strcpy(copy, text);
printf("Length: %lu\n", strlen(copy));
printf("Compare: %d\n", strcmp(copy, "Hello"));

11. Bộ Nhớ Động

Sử dụng mallocfree cho cấp phát bộ nhớ heap.

int* nums = (int*) malloc(3 * sizeof(int));
nums[0] = 1; nums[1] = 2; nums[2] = 3;

for (int i = 0; i < 3; i++) {
    printf("%d ", nums[i]);
}

free(nums);