Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Triển khai hàm itoa() riêng trong C


Phần này hướng dẫn chuyển đổi số nguyên thành chuỗi.

Logic rất đơn giản. Ta dùng hàm sprintf(). Hàm này in giá trị hoặc dòng vào chuỗi, không phải console. Đây là khác biệt duy nhất giữa printf() và sprintf(). Tham số đầu tiên là bộ đệm chuỗi để lưu dữ liệu.

Đầu vào: Người dùng nhập giá trị số, ví dụ 42

Đầu ra: Chương trình trả về chuỗi tương ứng như "42"

Thuật toán

Bước 1: Nhận số làm tham số
Bước 2: Tạo bộ đệm chuỗi rỗng để lưu kết quả
Bước 3: Dùng sprintf() chuyển số thành chuỗi
Bước 4: Kết thúc

Ví dụ mã

#include<stdio.h>

char* my_itoa(int number) {
    char str[20]; // tạo chuỗi rỗng lưu số
    sprintf(str, "%d", number); // chuyển số thành chuỗi
    return str;
}

main() {
    int number;
    printf("Nhập một số: ");
    scanf("%d", &number);
    printf("Bạn đã nhập: %s", my_itoa(number));
}

Kết quả

Nhập một số: 56
Bạn đã nhập: 56