Hàm printf

Cách sử dụng hàm printf

Để in số nguyên: %d là số (digit), %u là kiểu không dấu (unsigned), %l là kiểu long. Ký tự \n in một dòng mới (new line).

1
2
3
4
printf("%d\n", 123); // in 123
printf("%d , %d , %d\n", 1, 2, 3); // in 1 , 2 , 3
printf("%ld\n", 123L); // in 123
printf("%lu\n", 123L); // in 123

Thêm khoảng trống hoặc số 0 đằng trước:

1
2
printf("%10d\n", 123); // in _______123 (_ là một khoảng trống)
printf("%010d\n", 123);// in 0000000123 (chèn các số 0 cho đủ 10 ký tự)

Có thể in kiểu số hexa (%x), số bát phân (%o) với hàm printf.

1
2
3
printf("%o\n", 123); // in 173 (hệ bát phân)
printf("%x\n", 123); // in 7b (hệ hexa)
printf("%X\n", 123); // in 7B (hệ hexa)

Để in kiểu char sử dụng %c để in ký tự.

1
2
printf("%c\n", 'a'); // in a
printf("%d\n", 'a'); // in 97 tương ứng với ký tự 'a' trong bảng ASCII

Các giá trị số thực sử dụng %f%e hoặc %E.

1
2
3
4
5
printf("%f\n", 2.123);  // in 2.123000
printf("%10f\n", 2.123);// in __2.123000 (_ là một dấu cách)
printf("%.2f\n", 2.123);// in 2.12
printf("%.2e\n", 2.123);  // in 2.12e+00
printf("%.2E\n", 2.123e6);  // in 2.12e+06

Để in một string sử dụng %s, để in địa chỉ sử dụng %p.

1
2
3
4
5
6
7
printf("%s\n", "Learn C program"); // in "Learn C program"
int a = 10;
printf("%p\n", &a); // &a là lấy địa chỉ của biến a

// Ép kiểu của &a về (long unsigned int)
// In 0x tiếp theo là địa chỉ biến a (kiểu long) theo hệ hexa
printf("0x%lx\n", (long unsigned int) &a);