KỸ THUẬT LẬP TRÌNH C Chương 2: Lệnh nhập / xuất bangtqh@hotmail.com 04/2010 Xuất 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 liệu 04/2010 Hàm printf • Xâu ñiều khiển bao gồm loại kí tự – Các kí tự ñiều khiển • \n • \f • \b • \t sang dòng sang trang xóa kí tự bên trái dấu Tab – Các kí tự ñể ñưa hình – Các kí tự ñịnh dạng khuôn in • Công thức định dạng: %[-][w][.p]Kt • w = wide(độ rộng); p = precise(độ xác); Kt = Ký tự chuyển dạng (dạng hiển thị) Dấu trừ quy định canh lề trái thay canh lề phải • Ví dụ: %.2f %8d %s %-5c Kỹ thuật lập trình C - Nhập/xuất liệu bangtqh@hotmail.com 04/2010 Hàm printf • Các ký tự chuyển dạng thường dùng Ký tự Ý nghĩa c In dạng ký tự char d In dạng số nguyên int u In dạng số nguyên unsigned int ld In dạng số nguyên long lu In dạng số nguyên unsigned long f In dạng số thực float s In dạng xâu ký tự x In dạng số nguyên hệ 16 (hecxa) o In dạng số nguyên hệ e, E In rở dạng khoa học g, G In dạng số thực (bỏ số vô nghĩa) bangtqh@hotmail.com Kỹ thuật lập trình C - Nhập/xuất liệu 04/2010 Hàm printf • Ví dụ bangtqh@hotmail.com Kỹ thuật lập trình C - Nhập/xuất liệu 04/2010 Hàm printf • In ký tự ñặc biệt • Công thức định dạng %[-][w][.p]Kt – W: wide (độ rộng) – P: precse (độ xác) – Kt: Ký tự chuyển dạng • Giá trị 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 vị trí \n In xuống dòng – Nhỏ độ rộng thực tế in bình thường – Lớn độ rộng thực tế (chèn thêm khoảng trống cho đủ độ rộng 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 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 liệu 04/2010 Hàm puts • Thư viện: “conio.h” • Công dụng: in hình xâu ký tự • Ví dụ: bangtqh@hotmail.com Kỹ thuật lập trình C - Nhập/xuất liệu 04/2010 Hàm sprintf • Thư viện: “stdio.h” • Công dụng: giống printf, khác ñiểm kết không xuất hình mà ñưa vào biến xâu • Ví dụ: bangtqh@hotmail.com Kỹ thuật lập trình C - Nhập/xuất liệu 04/2010 Nhập 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 liệu nhập vào – Danh sách tham số: Là ñịa biến cần nhập liệu • Sử dụng toán tử & ñể xác định địa 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 liệu 04/2010 Hàm scanf • Không thông báo cho người dùng biết giá trị cần nhập giá trị gì? phải kết hợp với lệnh xuất liệu • Không nhận xâu có dấu cách trống • Không xóa ký tự thừa ñệ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 liệu 10 04/2010 Sử dụng fflush sau scanf Công d ng: xóa ký tự thừa dư lại ñệm scanf bangtqh@hotmail.com Kỹ thuật lập trình C - Nhập/xuất liệu 11 04/2010 Kết hợp nhập xuất liệu Kết chương trình ? bangtqh@hotmail.com Kỹ thuật lập trình C - Nhập/xuất liệu 12 04/2010 Hàm gets • Thư viện: “conio.h” • Công dụng: nhập vào xâu ký tự • Ví dụ: Liệu có dùng gets nhập số không? bangtqh@hotmail.com Kỹ thuật lập trình C - Nhập/xuất liệu 13 04/2010 Một số hàm nhập/xuất liệu khác Hàm Ý nghĩa int getch() đợi nhập ký tự từ bàn phím (không hiển thị hình) int getche() giống getch() hiển thị hình int putch() In hình ký tự int kbhit() Kiểm tra xem có phím bị nhấn không? cprintf() Giống printf 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 liệu 14 04/2010 Màu sắc xuất liệu • Đặt màu textbackground(màu nền) • Đặt màu chữ textcolor(màu chữ) bangtqh@hotmail.com Hằng màu Giá trị ý nghĩa BLACK Đen BLUE Xanh dương GREEN Xanh CYAN Xanh ngọc RED Đỏ MAGENTA Tím BROWN Nâu LIGHTGRAY Xám Kỹ thuật lập trình C - Nhập/xuất liệu 15 04/2010 Một vài ví dụ nhập/xuất liệu Viết chương trình cho nhập hệ số phương trình bậc ẩn ax+b=0 (với a≠0) in hình nghiệm phương trình cho Viết chương trình hiển thị hình số tiền phải trả cho gọi điện thoại N giây Biết cước gọi tính theo block xñ, block giây Các giá trị x, N nhập từ bàn phím Viết chương trình nhập tọa độ ñiểm A, B, C mặt phẳng Tính in hình chu vi, diện tích tam giác ABC Viết chương trình nhập họ tên, hệ số lương nhân viên Tính in hình lương lĩnh nhân viên sau trừ ñi khoản: BHYT 1.5%, BH thất nghiệp 1% ðảng phí 1% Viết chương trình hình thể tích tứ diện ABCD biết A, B, C có tọa độ nhập từ bàn phím (XA, YA) (XB, YB) (XC, YC) chiều cao từ ñỉnh D xuống mặt phẳng ABC h bangtqh@hotmail.com Kỹ thuật lập trình C - Nhập/xuất liệu 16 04/2010 bangtqh@hotmail.com Kỹ thuật lập trình C - Nhập/xuất liệu 17 04/2010 bangtqh@hotmail.com Kỹ thuật lập trình C - Nhập/xuất liệu 18 ... scanf C ng d ng: xóa ký tự thừa dư lại ñệm scanf bangtqh@hotmail.com Kỹ thuật lập trình C - Nhập/xuất liệu 11 04 /20 10 Kết hợp nhập xuất liệu Kết chương trình ? bangtqh@hotmail.com Kỹ thuật lập. .. bangtqh@hotmail.com Kỹ thuật lập trình C - Nhập/xuất liệu 04 /20 10 Hàm puts • Thư viện: “conio.h” • C ng dụng: in hình xâu ký tự • Ví dụ: bangtqh@hotmail.com Kỹ thuật lập trình C - Nhập/xuất liệu 04 /20 10... Xám Kỹ thuật lập trình C - Nhập/xuất liệu 15 04 /20 10 Một vài ví dụ nhập/xuất liệu Viết chương trình cho nhập hệ số phương trình b c ẩn ax+b=0 (với a≠0) in hình nghiệm phương trình cho Viết chương