Turbo-C-Bai-1122201050131PM

3 329 2
Turbo-C-Bai-1122201050131PM

Đang tải... (xem toàn văn)

Thông tin tài liệu

Tin học cho lớp 11 chuyên Tin Năm học 2009-2010 Phần II. NHẬP MÔN LẬP TRÌNH THEO NGÔN NGỮ C Bài 1. Sơ lược về ngôn ngữ C $1. Sự ra đời của ngôn ngữ C • Ngôn ngữ C do Dennis Ritchie sáng tác năm 1972 tại phòng thí nghiệm Bell Telephone (thuộc Cty Viến thông AT&T), bang New Jersey, Mỹ, để giúp tạo ra hệ điều hành UNIX. • Đến năm 1978, bản in đầu tiên ra đời: “The C programming language” do Kernighan và Ritchie viết. • Sau đó viện Tiêu chuẩn hoá Quốc gia Mỹ (ANSI=American National Standard Institute) lấy làm thành một tiêu chuẩn ANSI C vào năm 1983. • Tiếp theo la Tổ chức Tiêu chuẩn Quốc tế (ISO=International Standard Organization) cũng lấy ANSI C làm tiêu chuẩn quốc tế. • C++ là ngôn ngữ mới, ra đời năm 1983 do Bjarne Stroustrup sáng tác cũng tại địa chỉ trên, bao trùm lên C. Dấu ++ là toán tử tăng 1 trong C, ví dụ: a=n++, tức là gán n cho a, rồi tăng n, hay a=++n, tức là n tăng lên trước rồi gán n mới cho a. • Nếu nói thêm về gốc tích, thì có gia phả sau đây: 1960 ALGOL-60 CPL ALGOL-68 BCPL ALGOL-W 1970 B PASCAL C MODULA 1980 ADA 1983 C++ $2. Một số đặc điểm nổi bật của ngôn ngữ C • Vẻ bề ngoài gần giống Pascal: có định hướng chương trình dịch, có khai báo kiểu, biến, hằng, tầm hoạt động các biến từ toàn cục đến địa phương, có các cấu trúc điều khiển: if…then…else, Case, while, repeat, for, các lệnh thường kết thúc bằng dấu chấm phẩy, cũng cho phép đưa các câu chú thích vào…và cũng có thể nhóm các câu lệnh lại với nhau. • C là ngôn ngữ mạnh, thường dùng để viết các chương trình hệ thống, các trình điều khiển thiết bị, viết các hệ điều hành, các chương trình tiện ích, ứng dụng như Soạn thảo Văn bản, Bảng tính, Cơ sở ữ liệu… • Sau khi dịch ra ngôn ngữ máy có thể đạt tới 80% so với việc viết bằng mã máy. Do vậy nó chạy rất nhanh. • Có thể sử dụng nhiều chương trình tiện ích khác cho việc lập trình bằng C. • C này dễ thích nghi trên nhiều loại máy tính: IBM, VAX, APPLE, MACHINETOSH… • C có cấu trúc modun (các chương trình con). Đó là các hàm (function). Chúng có thể dùng nhiều lần trong nhiều chương trình. Tuy nhiên nó không cho phép khai báo hàm con trong hàm. C không có các thủ tục. Thân chương trình là hàm main() luôn được viết trước các hàm khác. 1 2• Ngôn ngữ này có rất ít từ khoá. C phân biệt chữ in hoa với chữ in thường, nên trong mã nguồn phải nhất quán, không tùy tiện như TP. Các biến khai báo ở đầu các hàm, nhưng đã khai báo một biến thì phải sử dụng! Biến khi khai báo lại viết kiểu trước, dấu cách rồi đến danh sách các biến cùng kiểu! • C là ngôn ngữ mềm dẻo: một giá trị có thể dùng cho nhiều kiểu dữ liệu: số 65 có thể gán cho ch=65, đó là chữ A hay có thể gán cho biến số nguyên n=65. Sở dĩ như vậy vì 65 mã hóa thành 01000001 trong bộ nhớ, nhưng khi giải mã ra là số thì nó là 65, thành kí tự thì nó là chữ ’A’. Hãy xét các ví dụ khác! Nó cũng cho phép xuất một số ra dạng Octadecimal và Hexa. Có thể ví như sau: Một người gửi vào ngân hàng bằng tiền VNĐ, khi lấy ra thì lại có thể bằng USD, FF, Yên Nhật,… hay ngoại tệ khác tương đương. • Khi viết chương trình việc dùng chữ cái thường hay hoa là khác nhau. Hằng kí tự thì viết kẹp giữa hai dấu sắc (nháy đơn), chẳng hạn: ’A’, còn hằng xâu kí tự kẹp giữa hai dấu nháy kép, ví dụ; “Đáp số: Phương trình vô nghiệm!”. Các dấu hiệu định dạng lại viết lẫn vào hằng xâu kí tự, nếu không biết rõ sẽ bị nhầm… Ví du: “Đáp số: x1 = %d, x2 = %d”, tức là in ra màn hình ở chỗ %d sẽ là một số nguyên. • Mã nguồn rất xúc tích, thay được cho nhiều sự diễn đạt khác, ví dụ: a=++n, thậm chí chỉ có n++ là một lệnh… n+ = 1. Lệnh gán viết nhờ dấu = luôn, khác TP (Turbo Pascal). • Một đặc điểm nữa là: Cú pháp trong C thuộc lại xa lạ, rắc rối và rất khó học! Trên đây chỉ là một phần rất ít ỏi, hết sức sơ lược để phục vụ cho ví dụ thực hành ngay. Còn rất nhiều điều bất ngờ! Sẽ học dần. • Tương ứng với cặp Begin và End của TP, thì trong C có cặp { }. Lời thuyết minh, giải thích trong C là cặp /*… */, trong C++ có thêm dòng giải thích sau dấu hiệu //. • Các điều nêu ở đây sẽ có mặt trong các bài kiểm tra trắc nghiệm sắp tới! $3. Chương trình dich • Ngôn ngữ C ra mã máy cũng có nhiều chương trình: Turbo C, Turbo C++, Borland C++, Microsft C, Think C,… Sau đây là một chương trình có lẽ là đơn giản nhất, viết theo Turbo C version 2.0 #include <stdio.h> main() { printf(“Xin chao cac ban.\n”); getch(); } • Để học tốt được ngôn ngữ C và sau đó là C++, ta theo nguyên tắc: Học dần, vừa học lý thuyết, vừa thực hành, học đến đâu thực hành đến đấy. • Trong C, có nhiều ký hiệu có nhiều nghĩa khác nhau, mà muốn sử dụng được đúng thì còn phụ thuộc vào ngữ cảnh sử dụng. • Ngông ngữ C quá mềm dẻo, có thể trộn lẫn các kiểu dữ liệu, đôi khi làm chương trình bất ổn. • Ngôn ngữ C là ngôn ngữ bậc trung (cao hơn Assembler và thấp hơn Pascal) • Phần mềm tối thiểu cho Turbo C 2.0 rất nhỏ: Cả thư mục cho một phiên làm việc với Turbo C chỉ khoảng 660 KB, nên có thể copy vào USB để mang về nhà, copy vào máy và chạy bình thường trong DOS. • Khi dùng hệ điều hành Windows nên tạo shortcut. Và qua Properties của shortcut, ta sẽ đặt chế độ Full Screen và Close on exit. • Giả sử Bạn đã copy thư mục TC vào ổ đĩa C:\ tại gốc, tức là bạn đã có C:\TC. Trước hết, hãy tạo shortcut cho C:\TC\tc.exe. • Cuối cùng là tiến hành lập trình trong môi trường phát triển tích hợp (IDE= Integral Development Environment) của Turbo C như sau: • Nhấp đúp chuột vào biểu tượng TC, màn hình soạn thảo của Turbo C sẽ hiện ra, gần như đối với TP. Nếu trên thanh menu có một menu đã được chọn (trên nền đen) thì gõ phím Esc để thanh 3menu trở về bình thường. Gõ F3 để mở tệp cũ để chạy thử như TP. Gõ Alt+F,N để soạn thảo chương trình mới… F9 để dịch, Ctrl+F9 để chạy thử, như TP. • Chú ý: Để chương trình chạy được, bạn phải đặt đúng đường dẫn tới các tệp bao hàm bằng cách sau: Khi môi trường soạn thảo đã sẵn sàng, bạn gõ Alt+O (tức là chọn menu Options), chọn Directories. Khi cửa sổ Directories mở ra ta sửa lại tất cả các đường dẫn thành C:\TC của bạn. (Nếu thư mục TC không để ở C:\ thì bạn phải sửa lại cho đúng). Sau đó, bạn gõ Alt+O,S để lưu các thông số (settings) này. Chương trình mẫu: Soạn thảo, chạy (Chú ý từng ký tự kể cả in hoa hay thường, dấu cách…): #include <stdio.h> /*Bao hàm thư viện trợ giúp Vào-Ra-chuẩn*/ #include <conio.h> /*Bao hàm thư viện Vào-từ-BànPhím*/ voi main() /*Hàm không có đối số, không trả lại giá trị hàm*/ { char HoTen[25]; ?*Khai báo HoTen là biến kiểu string[25]*/ int Tuoi; /*Tuổi kiểu nguyên*/ float Cao, Nang /*Cao va Nang là 2 biến thực*/ clrscr(); /*Xóa màn hình*/ printf(“Ho va ten = “); gets(HoTen); /*s là string, nhập xong phải gõ Enter*/ printf(“Tuoi = “); scanf(“%d”,&Tuoi); printf(“Chieu cao va can nang = “); scanf(“%f%f”,&Cao,&Nang); printf(“\nBan vua nhap: Ho ten: %s, %2d tuoi, cao %6.2f cm, nang %6.2f kg”,HoTen,Tuoi,Cao,Nang); getch(); /*ch là kí tự, nhập không phải gõ Enter*/ } Bài tập 1: Viết một chương trình xuất ra màn hình lần lượt các câu sau dây, mỗi câu một dòng: Ngon ngu C là mot ngon ngu tuyet voi! Chuc cac ban thanh cong! Sau mỗi câu phải gõ một phím mới tiếp tục….(Gợi ý: Dùng định dạng \n để xuống dòng, getch() để chờ gõ một phím). Bài tập 2: Viết một chương trình nhập Họ và tên cửa khách, xuất ra màn hình câu “Chào bạn “, sau đó là họ và tên khách. Bài tập 3: Viết một chương trình nhập một số nguyên, xuất ra màn hình chính số đó, dưới các dạng khác nhau: Decimal, Hexa, Octadecimal, kí tự. (Gợi ý: Dùng các định dạng %d, %x, %o, %c tương ứng!) Bài tập 4: Viết một chương trình nhập các hệ số của Hệ phương trình ax+by=c, a’x+b’y=c’ (*) và xuất ra màn “Ta co he phuong trinh: “, viết thành 2 dòng như bình thường (*), chứ không viết a1x+b1y=c1,…(Gợi ý: dùng dịnh dạng \’ để xuất ra dấu nháy trên). Tài liêu tham khảo: 1. Giáo trình TURBO C/C++ của PGS. TS. Bùi Thế Tâm 2. Ngôn ngữ lập trình C của Quách Tuấn Ngọc 3. Ngôn ngữ lập trình C của Hoàng Chí Thành lighsmok@yahoo.comtel.: 0904070637 123doc.vn

Ngày đăng: 25/01/2013, 17:02

Tài liệu cùng người dùng

Tài liệu liên quan