%[-][n[.m]]
Gi¸o tr×nh tin häc c¬ së II - N
gôn ngữ
C
38
Ý nghĩa các thành phần
à
Thành phần đây là kí tự quy định kiểu của dữ liệu cần in
ví dụ bạn muốn in một giá trị int thì là d, bạn muốn in một
kí tự thì kí tự định kiểu là c. Các kiểu khác được cho trong bảng sau:
Kí tự định
kiểu
Kiểu của giá trị
cần in
Khuôn dạng in ra
d
int
số nguyên hệ 10
i
int
số nguyên hệ 10
o
int
số nguyên không dấu hệ 8
u
unsigned int số nguyên không dấu hệ 10
x,X
int,unsigned số nguyên không dấu hệ 16
f
float
số thực (dạng dấu phẩy tĩnh)
e, E
float
số thực (dấu phẩy tĩnh hoặc kí pháp khoa học)
c
char
kí tự
s
char *
xâu kí tự
p
con
trỏ
in giá trị con trỏ dạng Segment:Offset hoặc Offset tuỳ
mô hình bộ nhớ được sử dụng
Lưu ý: Có thể dùng kết hợp ld, lu, lx,.. để định kiểu dữ liệu in ra là số nguyên dài
(long), số nguyên dài không dấu (unsigned long),..
à
Thành phần [n[.m]] : n, m là các số nguyên dương, n quy định độ rộng của thông
tin (tính theo số ký tự) được in ra màn hình, m số chữ số cho phần thập phân (chỉ
dùng cho số thực), nếu có m thì số thực được làm tròn với m chữ số thập phân.
Nếu độ rộng thực sự của giá trị cần in < độ rộng được dành cho nó (n) thì các
dấu trống được thêm vào (bên trái hay bên phải tuỳ vào sự có mặt của thành
phần [-] hay không ).
Lưu ý: có thể thay số n bằng kí tự *, khi đó thông tin sẽ được in ra theo đúng độ
rộng thực sự của nó.
ví dụ printf(“%5.1f”,1.37); sẽ in ra 1.4 và chiếm 5 vị trí trên màn hình, bên trái
của số được điền 2 dấu cách.
à
Thành phần [-]: Xác định kiểu căn bên trái hay bên phải. Khi một giá trị được in
ra trên màn hình, nếu độ rộng thực sự của nó nhỏ hơn độ rộng xác định bởi thành
phần n, ngầm định chúng được căn bên phải (trong vùng n kí tự trên màn hình),
nếu có dấu - thì dữ liệu được căn trái.
Gi¸o tr×nh tin häc c¬ së II - N
gôn ngữ
C
39
Ví dụ:
Giá trị trả về của hàm printf là tổng độ dài thông tin được in (tính theo ký tự).
Ví dụ 1: chương trình nhập 1 kí tự từ bàn phím, in kí tự và mã của nó ra màn hình
#include
#include
void main(){
int c;
printf("\nHay nhap mot ky tu : ");
c = getch();
printf("\nban vua nhap ky tu %c, co ma la %d ",c,c);
printf("\nbam phim bat ky de ket thuc");
getch();
}
khi thực hiện chương trình trên chúng ta sẽ được:
Hay nhap mot ky tu : A
bạn nhập
máy in ra
ban vua nhap ky tu A , co ma la 65
bam phim bat ky de ket thuc
như vậy cùng là giá trị c (mã của kí tự chúng ta gõ từ bàn phím), nhưng với đặc tả khác
nhau sẽ cho chúng ta khuôn dạng khác nhau (trong ví dụ với đặc tả %d in ra 65, nhưng
với %c lại in ra kí tự A).
Ví dụ 2: chương trình nhập 2 số nguyên a, b từ bàn phím (b !=0), in tổng, hiệu, tích,
thương phần nguyên a/b
#include
#include
void main() { int a,b,c;
printf("\nnhap a, b :");
scanf("%d%d",&a,&b);
printf("\na+b= %5d \na-b= %5d", a+b, a-b);
printf("\na*b= %5d \na/b= %5d", a*b, a/b);
getch();
}
kết quả chạy chương trình là
Gi¸o tr×nh tin häc c¬ së II - N
gôn ngữ
C
40
nhap a, b : 5 2 ↵
a+b=
7
a-b= 3
a*b= 10
a/b= 2
b. Hàm putch
Cú pháp:
Chia sẻ với bạn bè của bạn: |