Xem mẫu
- K THU T L P TRÌNH C
Chương 2: L nh nh p / xu t
bangtqh@hotmail.com
04/2010
Xu t d li u, hàm: printf
• Thu c thư vi n “stdio.h”
• Cú pháp:
printf(“Xâu đi u khi n”,[danh sách tham s ]);
• Ví d :
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 2
- 04/2010
Hàm printf
• Xâu ñi u khi n bao g m 3 lo i kí t
– Các kí t ñi u khi n
• \n sang dòng m i
• \f sang trang m i
• \b xóa kí t bên trái
• \t d u Tab
– Các kí t ñ ñưa ra màn hình
– Các kí t ñ nh d ng và khuôn in
• Công th c đ nh d ng: %[-][w][.p]Kt
• w = wide(đ r ng); p = precise(đ chính xác); Kt =
Ký t chuy n d ng (d ng hi n th ). D u tr s quy
đ nh canh l trái thay vì canh l ph i
• Ví d : %.2f %8d %s %-5c
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 3
04/2010
Hàm printf
• Các ký t chuy n d ng thư ng dùng
Ký t Ý nghĩa
c In ra d ng ký t char
d In ra d ng s nguyên int
u In ra d ng s nguyên unsigned int
ld In ra d ng s nguyên long
lu In ra d ng s nguyên unsigned long
f In ra d ng s th c float
s In ra d ng xâu ký t
x In ra d ng s nguyên h 16 (hecxa)
o In ra d ng s nguyên h 8
e, E In ra r d ng khoa h c
g, G In ra d ng s th c (b các s 0 vô nghĩa)
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 4
- 04/2010
Hàm printf
• Ví d
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 5
04/2010
Hàm printf
• In các ký t ñ c bi t Vi t Ý nghĩa
• Công th c đ nh d ng \’ In ký t d u nháy đơn (‘)
%[-][w][.p]Kt \” In ký t d u nháy kép (“)
\\ In ký t backslash (\)
– W: wide (đ r ng)
\t In ký t Tab
– P: precse (đ chính xác)
\b In lùi 1 v trí
– Kt: Ký t chuy n d ng
\n In xu ng dòng m i
• Giá tr c a w
– Nh hơn ho c b ng đ r ng th c t in bình thư ng
– L n hơn đ r ng th c t (chèn thêm kho ng tr ng cho đ
đ r ng là w (n u có d u tr chèn bên ph i, ngư c l i
chèn bên trái)
• Giá tr p: quy ñ nh làm tròn đ n bao nhiêu ch s
đ ng sau ch m th p phân.
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 6
- 04/2010
Hàm puts
• Thư vi n: “conio.h”
• Công d ng: in ra màn hình 1 xâu ký t
• Ví d :
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 7
04/2010
Hàm sprintf
• Thư vi n: “stdio.h”
• Công d ng: gi ng printf, ch khác ñi m k t qu
không xu t ra màn hình mà ñưa vào 1 bi n xâu.
• Ví d :
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 8
- 04/2010
Nh p d li u, hàm: scanf
• Thu c thư vi n “stdio.h”
• Cú pháp:
scanf(“Xâu đi u khi n”,[DS tham s ]);
– Xâu đi u khi n: Cho phép đ nh d ng d li u nh p vào
– Danh sách tham s : Là ñ a ch các bi n c n nh p li u
• S d ng toán t & ñ xác đ nh đ a ch các bi n
• Ví d :
scanf(“%d%f%c”, &x, &y, &z);
scanf(“%s”, &hoten);
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 9
04/2010
Hàm scanf
• Không thông báo cho
ngư i dùng bi t giá tr
c n nh p là giá tr gì?
ph i k t h p v i
l nh xu t d li u
• Không nh n đư c
xâu có d u cách tr ng
• Không xóa ký t th a
trong b ñ m nh
hư ng t i l n nh p
phía sau.
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 10
- 04/2010
S d ng fflush sau scanf
Công d ng:
xóa nh ng ký t
th a còn dư l i
trong b ñ m c a
scanf
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 11
04/2010
K t h p nh p và xu t d li u
K t qu
chương
trình ?
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 12
- 04/2010
Hàm gets
• Thư vi n: “conio.h”
• Công d ng: nh p vào 1 xâu ký t
• Ví d : Li u có dùng
gets nh p 1 s
không?
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 13
04/2010
M t s hàm nh p/xu t d li u khác
Hàm Ý nghĩa
int getch() đ i nh p 1 ký t t bàn phím (không hi n th màn hình)
int getche() gi ng getch() nhưng hi n th màn hình
int putch() In ra màn hình 1 ký t
int kbhit() Ki m tra xem có 1 phím b nh n không?
cprintf() Gi ng printf nhưng có màu s c
gotoxy(x, y) chuy n t i v trí (c t x, hàng y)
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 14
- 04/2010
Màu s c khi xu t d li u
• Đ t màu n n
H ng màu Giá tr ý nghĩa
textbackground(màu n n)
BLACK 0 Đen
• Đ t màu ch
BLUE 1 Xanh dương
textcolor(màu ch )
GREEN 2 Xanh lá
CYAN 3 Xanh ng c
RED 4 Đ
MAGENTA 5 Tím
BROWN 6 Nâu
LIGHTGRAY 7 Xám
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 15
04/2010
M t vài ví d nh p/xu t d li u
1. Vi t chương trình cho nh p các h s c a phương trình b c nh t 1 n
ax+b=0 (v i a≠0) hãy in ra màn hình nghi m c a phương trình đã
cho.
2. Vi t chương trình hi n th ra màn hình s ti n ph i tr cho 1 cu c g i
đi n tho i N giây. Bi t r ng cư c g i tính theo m i block là xñ, và 1
block b ng 6 giây. Các giá tr x, N nh p t bàn phím.
3. Vi t chương trình nh p t a đ c a 3 ñi m A, B, C trên m t ph ng.
Tính và in ra màn hình chu vi, di n tích c a tam giác ABC.
4. Vi t chương trình nh p h tên, h s lương c a 1 nhân viên. Tính và
in ra màn hình lương còn lĩnh c a nhân viên đó sau khi tr ñi các
kho n: BHYT 1.5%, BH th t nghi p 1% và ð ng phí 1%
5. Vi t chương trình hi n ra màn hình th tích c a t di n ABCD bi t
r ng A, B, C có t a đ nh p t bàn phím (XA, YA) (XB, YB) (XC, YC) và
chi u cao t ñ nh D xu ng m t ph ng ABC là h
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 16
- 04/2010
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 17
04/2010
bangtqh@hotmail.com K thu t l p trình C - Nh p/xu t d li u 18
nguon tai.lieu . vn