Tải bản đầy đủ (.pdf) (9 trang)

Bài giảng kỹ thuật lập trình c chương 2 ths trần quang hải bằng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (206.22 KB, 9 trang )

KỸ THUẬT LẬP TRÌNH C
Chương 2: Lệnh nhập / xuất



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ụ:



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
• \f
• \b
• \t


sang dòng mới
sang trang mới
xóa kí tự bên trái
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
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)



Kỹ thuật lập trình C - Nhập/xuất dữ liệu

4


04/2010

Hàm printf
• Ví dụ



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
• Công thức định dạng

%[-][w][.p]Kt
– W: wide (độ rộng)
– P: precse (độ chính xác)
– Kt: Ký tự chuyển dạng

• Giá trị của w

Viết

Ý nghĩa

\’

In ký tự dấu nháy đơn (‘)

\”

In ký tự dấu nháy kép (“)

\\

In ký tự backslash (\)


\t

In ký tự Tab

\b

In lùi 1 vị trí

\n

In xuống dòng mới

– 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.


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ụ:



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ụ:



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);


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.



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



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 ?




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?



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)



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

textbackground(màu nền)
• Đặt màu chữ
textcolor(màu chữ)



Hằng màu

Giá trị

ý nghĩa

BLACK

0

Đen

BLUE

1

Xanh dương

GREEN

2

Xanh lá


CYAN

3

Xanh ngọc

RED

4

Đỏ

MAGENTA

5

Tím

BROWN

6

Nâu

LIGHTGRAY

7

Xám


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



Kỹ thuật lập trình C - Nhập/xuất dữ liệu

16


04/2010



Kỹ thuật lập trình C - Nhập/xuất dữ liệu

17

04/2010



Kỹ thuật lập trình C - Nhập/xuất dữ liệu

18




×